)]}'
{
  "commit": "e5e85af5a1141ed11fe2a94de6502ebbcd66ae69",
  "tree": "d1b2d4071cead5cb1709df304166e656be51b8e8",
  "parents": [
    "7498cbe87efc18549475d18da63148090eff58ea"
  ],
  "author": {
    "name": "Danny Tuppeny",
    "email": "danny@tuppeny.com",
    "time": "Wed Oct 14 09:04:45 2026 -0700"
  },
  "committer": {
    "name": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Oct 14 09:04:45 2026 -0700"
  },
  "message": "[analysis_server] Support cancellation + file modification rejection for new refactors\n\nFor the legacy refactors, we would cancel an in-progress refactor if another refactor started, and we would fail the refactor (don\u0027t send edits back to the client) if the initial file was modified while we were computing.\n\nThis adds support for the same to the new self-described refactors (the tests were added to \"Add Constructor Name\", but the mechanism is general).\n\nChange-Id: I2e637808e0ad9a06da55a8156226b68020d4778e\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/563523\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\nReviewed-by: Keerti Parthasarathy \u003ckeertip@google.com\u003e\nCommit-Queue: Keerti Parthasarathy \u003ckeertip@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2282593333fb8f52a486d371ae40bc1b3b24af61",
      "old_mode": 33188,
      "old_path": "pkg/analysis_server/lib/src/lsp/handlers/commands/abstract_refactor.dart",
      "new_id": "63d0158fd229288c3fba2aecce6ece9a814ed0f9",
      "new_mode": 33188,
      "new_path": "pkg/analysis_server/lib/src/lsp/handlers/commands/abstract_refactor.dart"
    },
    {
      "type": "modify",
      "old_id": "172592170673c8a583fffd687cccca06755484ba",
      "old_mode": 33188,
      "old_path": "pkg/analysis_server/lib/src/lsp/handlers/commands/refactor_command_executor.dart",
      "new_id": "4d16ad4f6becd9ac3ac30baec6dfe82c9195f492",
      "new_mode": 33188,
      "new_path": "pkg/analysis_server/lib/src/lsp/handlers/commands/refactor_command_executor.dart"
    },
    {
      "type": "modify",
      "old_id": "b2ccd1fa7fa2b9eaa7b096deae35e4a58e003172",
      "old_mode": 33188,
      "old_path": "pkg/analysis_server/lib/src/lsp/handlers/commands/refactor_command_handler_mixin.dart",
      "new_id": "dd7cf67d85fc1661e463302c4628a93c5831bbb5",
      "new_mode": 33188,
      "new_path": "pkg/analysis_server/lib/src/lsp/handlers/commands/refactor_command_handler_mixin.dart"
    },
    {
      "type": "modify",
      "old_id": "bed5eca0d6b767ecfa821e8ecf59d15b5ae368e4",
      "old_mode": 33188,
      "old_path": "pkg/analysis_server/lib/src/lsp/handlers/commands/refactor_command_resolver.dart",
      "new_id": "0bcbc8a63cd0ab95f9d13b5641be20737a0f537c",
      "new_mode": 33188,
      "new_path": "pkg/analysis_server/lib/src/lsp/handlers/commands/refactor_command_resolver.dart"
    },
    {
      "type": "modify",
      "old_id": "2c5f046b40afaa633ab2c66681291aa01ccd7b59",
      "old_mode": 33188,
      "old_path": "pkg/analysis_server/lib/src/scheduler/message_scheduler.dart",
      "new_id": "532c8f072b92fefddde50d61e4e330a882533a6e",
      "new_mode": 33188,
      "new_path": "pkg/analysis_server/lib/src/scheduler/message_scheduler.dart"
    },
    {
      "type": "modify",
      "old_id": "02e27185abdeef5bc56eb99a66c5f12a71c423a0",
      "old_mode": 33188,
      "old_path": "pkg/analysis_server/test/src/services/refactoring/add_constructor_name_test.dart",
      "new_id": "d3b66f38571172d0fc6e4870254bfc3ff432bd88",
      "new_mode": 33188,
      "new_path": "pkg/analysis_server/test/src/services/refactoring/add_constructor_name_test.dart"
    },
    {
      "type": "modify",
      "old_id": "7a94948013d5ca78606344152d67fa38b25d4890",
      "old_mode": 33188,
      "old_path": "pkg/analysis_server/test/src/services/refactoring/refactoring_test_support.dart",
      "new_id": "df0bc021a5ebd2656b302780fb39769af88b3a5b",
      "new_mode": 33188,
      "new_path": "pkg/analysis_server/test/src/services/refactoring/refactoring_test_support.dart"
    }
  ]
}
