)]}'
{
  "commit": "da36aaa118b3dac2a065d4e6ec4782900a909938",
  "tree": "c2b04134241c9b75aa143fa38e1fd8135cdb901a",
  "parents": [
    "999fefcfcd8f08907a63da7ad7512272644516d2"
  ],
  "author": {
    "name": "Konstantin Shcheglov",
    "email": "scheglov@google.com",
    "time": "Tue Sep 22 09:22:46 2026 -0700"
  },
  "committer": {
    "name": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Sep 22 09:22:46 2026 -0700"
  },
  "message": "AST. Ensure that FindNode2 returns only V2 or shared nodes, never V1.\n\nEnsure FindNode2 only returns canonical V2 nodes or nodes shared between\nthe V1 and V2 AST views. Reject V1 projections from both individual node\nlookups and typed node collections so migrated tests cannot silently\ncontinue asserting the legacy AST.\n\nRemove the assignment-specific fallback that converted V2 assignment\nnodes back to AssignmentExpression. Callers now use the corresponding V2\nDirectAssignment or CompoundAssignment nodes, or explicitly use FindNode\nwhen they need the V1 view.\n\nImprove failed lookup diagnostics by reporting the requested type and\nthe ancestor node types encountered during the search.\n\nBug: https://github.com/dart-lang/sdk/issues/63882\nChange-Id: Ic1ed9dd0d1cdd6284963b0af07eca793b1babce8\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/552400\nCommit-Queue: Konstantin Shcheglov \u003cscheglov@google.com\u003e\nReviewed-by: Paul Berry \u003cpaulberry@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bec45008eb1176b5927d52d53e01da006a31a560",
      "old_mode": 33188,
      "old_path": "pkg/analyzer/lib/src/test_utilities/find_node.dart",
      "new_id": "c86b93072b4ae1d0dd6765e2f266c637ffb61505",
      "new_mode": 33188,
      "new_path": "pkg/analyzer/lib/src/test_utilities/find_node.dart"
    },
    {
      "type": "modify",
      "old_id": "ee3ca2f80407d2c9b2a58cb826af8387ab474446",
      "old_mode": 33188,
      "old_path": "pkg/analyzer/test/dart/ast/ast_test.dart",
      "new_id": "ac62e7fc3a579f7414ad24d08d9d6bfca6fd3bca",
      "new_mode": 33188,
      "new_path": "pkg/analyzer/test/dart/ast/ast_test.dart"
    },
    {
      "type": "modify",
      "old_id": "afc37a89e6aa340e5c78f4b828528aa5ab01a0b3",
      "old_mode": 33188,
      "old_path": "pkg/analyzer/test/generated/non_error_resolver_test.dart",
      "new_id": "716c5594931210c902839fe7f1842e0e21316c2e",
      "new_mode": 33188,
      "new_path": "pkg/analyzer/test/generated/non_error_resolver_test.dart"
    },
    {
      "type": "modify",
      "old_id": "ccfd45705423f0937309a06fc53990d67b1c4217",
      "old_mode": 33188,
      "old_path": "pkg/analyzer/test/generated/patterns_parser_test.dart",
      "new_id": "570f6a92b9a68990a1bbeb2fad7a706bc4bd7ca9",
      "new_mode": 33188,
      "new_path": "pkg/analyzer/test/generated/patterns_parser_test.dart"
    },
    {
      "type": "modify",
      "old_id": "6b3b3a7c2d10e5c8eb5790997fd6a5f0e19aaec6",
      "old_mode": 33188,
      "old_path": "pkg/analyzer/test/generated/simple_resolver_test.dart",
      "new_id": "54e1484f3eab8c8e3060a75a58a78d708bc9f43e",
      "new_mode": 33188,
      "new_path": "pkg/analyzer/test/generated/simple_resolver_test.dart"
    },
    {
      "type": "modify",
      "old_id": "1ebb57e316d75a7afb2094a15f5ea82d47e1ca50",
      "old_mode": 33188,
      "old_path": "pkg/analyzer/test/generated/strong_mode_test.dart",
      "new_id": "7514104f2b81b334f17b6b4aa9a61822e6e10476",
      "new_mode": 33188,
      "new_path": "pkg/analyzer/test/generated/strong_mode_test.dart"
    },
    {
      "type": "modify",
      "old_id": "6c42fcae83c185f0840981d66bcf6ff69890f7dc",
      "old_mode": 33188,
      "old_path": "pkg/analyzer/test/src/dart/resolution/index_expression_test.dart",
      "new_id": "7234705625dae206d0bca7691e0234632a7f02d0",
      "new_mode": 33188,
      "new_path": "pkg/analyzer/test/src/dart/resolution/index_expression_test.dart"
    },
    {
      "type": "modify",
      "old_id": "78438686142f6a2875f422a96f9e89ea441304be",
      "old_mode": 33188,
      "old_path": "pkg/analyzer/test/src/dart/resolution/property_access_test.dart",
      "new_id": "dc18cf6d11ad9cb78bd57149b3234a6cc80fe266",
      "new_mode": 33188,
      "new_path": "pkg/analyzer/test/src/dart/resolution/property_access_test.dart"
    },
    {
      "type": "modify",
      "old_id": "c86b21ef53872ca5fca154653cfaa7498da639a9",
      "old_mode": 33188,
      "old_path": "pkg/analyzer/test/src/diagnostics/ambiguous_extension_member_access_test.dart",
      "new_id": "69ad1da164f1e4a6fb23ad4ed2a06a9a45874779",
      "new_mode": 33188,
      "new_path": "pkg/analyzer/test/src/diagnostics/ambiguous_extension_member_access_test.dart"
    }
  ]
}
