)]}'
{
  "commit": "c0fa04d1820557b85d160b5c807194a38c1cae95",
  "tree": "e0d6aa5375d600fe122a0b1487bf5955c56571ee",
  "parents": [
    "f6cbc9ffc0d294f477d098e27dfbcf0824d86e9c"
  ],
  "author": {
    "name": "Konstantin Shcheglov",
    "email": "scheglov@google.com",
    "time": "Wed Aug 20 08:47:59 2025 -0700"
  },
  "committer": {
    "name": "dart-internal-monorepo",
    "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
    "time": "Wed Aug 20 08:48:49 2025 -0700"
  },
  "message": "Elements. Make InterfaceElementImpl.session AnalysisSessionImpl.\n\nStrengthen the `session` type on `InterfaceElementImpl` from nullable\n`AnalysisSession?` to concrete `AnalysisSessionImpl` and route it\nthrough `library.session`. This reflects the actual runtime type,\neliminates downcasts, and makes the API non-nullable.\n\nKey changes:\n- `InterfaceElementImpl.session` now returns `AnalysisSessionImpl`.\n- Replaced usages of `(session as AnalysisSessionImpl)` with direct `session.inheritanceManager...` calls (e.g., inherited/interface member lookups and overrides).\n- Removed a generic nullable `session` getter that delegated to an enclosing fragment, and dropped redundant fragment-level overrides where the library already provides the session.\n\nWhy:\n- Improves type safety and clarity by matching the concrete session type.\n- Removes unnecessary nullability and casting boilerplate.\n- Centralizes the source of truth for the session via the owning library.\n\nChange-Id: I2f8e045c34218e9e10caa794b830219326c7da1d\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/446006\nCommit-Queue: Konstantin Shcheglov \u003cscheglov@google.com\u003e\nReviewed-by: Johnni Winther \u003cjohnniwinther@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/5f9a04938ddb8a21ab623c35ec021096d08bee29\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6116432151952b1ce3981f465dd6f3074da656e7",
      "old_mode": 33188,
      "old_path": "DEPS",
      "new_id": "c4339e5f3c0cd739eb19c7b8d3bed6ecf55588b8",
      "new_mode": 33188,
      "new_path": "DEPS"
    },
    {
      "type": "modify",
      "old_id": "c094f1b4578d94428a7f77b37b9cc68c71e8cdf2",
      "old_mode": 33188,
      "old_path": "commits.json",
      "new_id": "aec4f10a52cb9b21eb8abe817bf9702f0e8eaa5c",
      "new_mode": 33188,
      "new_path": "commits.json"
    }
  ]
}
