blob: 2563df5b4ae1f4e3c881d08fd6b77b7d11f0365c [file] [edit]
[
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480570506",
"pull_request_review_id": 4578495750,
"id": 3480570506,
"node_id": "PRRC_kwDOCp9iHs7PdUqK",
"diff_hunk": "@@ -20,22 +20,24 @@ Future<List<ChangeRecord>> readChangedResults(File resultsFile) async {\n print('Empty input results.json file');\n exit(1);\n }\n-\n- ChangeRecord? firstChange;\n+ final firstRecord = ChangeRecord.fromMap(",
"path": "builder/bin/upload_results_to_database.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Revert changes to this file.",
"created_at": "2026-06-26T09:52:42Z",
"updated_at": "2026-06-26T09:52:42Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480570506",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480570506"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480570506"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480570506/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 23,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 6,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480606267",
"pull_request_review_id": 4578539152,
"id": 3480606267,
"node_id": "PRRC_kwDOCp9iHs7PddY7",
"diff_hunk": "@@ -157,15 +140,15 @@ class FirestoreService {\n }\n \n Future<Commit> getCommitByIndex(int index) async {\n- final response = await query(\n+ final response = await _query<Document>(",
"path": "builder/lib/src/firestore.dart",
"commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "SafeDocument",
"created_at": "2026-06-26T09:58:18Z",
"updated_at": "2026-06-26T09:58:18Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480606267",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480606267"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480606267"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480606267/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 145,
"original_line": 143,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 71,
"position": 89,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480607204",
"pull_request_review_id": 4578540223,
"id": 3480607204,
"node_id": "PRRC_kwDOCp9iHs7Pddnk",
"diff_hunk": "@@ -146,9 +129,9 @@ class FirestoreService {\n return documentExists('$documents/reviews/$review/patchsets/$patchset');\n }\n \n- Commit _commit(SafeDocument document) {\n- document.fields['hash'] = taggedValue(document.name.split('/').last);\n- return Commit(document.name.split('/').last, document);\n+ Commit _commit(Document document) {",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "SafeDocument",
"created_at": "2026-06-26T09:58:26Z",
"updated_at": "2026-06-26T09:58:26Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480607204",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480607204"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480607204"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480607204/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 132,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 60,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480610689",
"pull_request_review_id": 4578544842,
"id": 3480610689,
"node_id": "PRRC_kwDOCp9iHs7PdeeB",
"diff_hunk": "@@ -157,15 +140,15 @@ class FirestoreService {\n }\n \n Future<Commit> getCommitByIndex(int index) async {\n- final response = await query(\n+ final response = await _query<Document>(\n from: 'commits',\n where: fieldEquals('index', index),\n );\n return _commit(response.first);\n }\n \n Future<Commit> getLastCommit() async {\n- final lastCommit = await query(\n+ final lastCommit = await _query<Document>(",
"path": "builder/lib/src/firestore.dart",
"commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "SafeDocument",
"created_at": "2026-06-26T09:58:57Z",
"updated_at": "2026-06-26T09:58:57Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480610689",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480610689"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480610689"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480610689/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 153,
"original_line": 151,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 80,
"position": 99,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480640015",
"pull_request_review_id": 4578583491,
"id": 3480640015,
"node_id": "PRRC_kwDOCp9iHs7PdloP",
"diff_hunk": "",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Make getDocumentOrNull generic and make it return a ConfigurationRecord here.",
"created_at": "2026-06-26T10:04:00Z",
"updated_at": "2026-06-26T10:04:00Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480640015",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480640015"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480640015"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480640015/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 180,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 1,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480641007",
"pull_request_review_id": 4578584581,
"id": 3480641007,
"node_id": "PRRC_kwDOCp9iHs7Pdl3v",
"diff_hunk": "",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "This should be a ConfigurationRecord",
"created_at": "2026-06-26T10:04:13Z",
"updated_at": "2026-06-26T10:04:13Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480641007",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480641007"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480641007"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480641007/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 186,
"original_line": 184,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 1,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480644723",
"pull_request_review_id": 4578588904,
"id": 3480644723,
"node_id": "PRRC_kwDOCp9iHs7Pdmxz",
"diff_hunk": "@@ -228,8 +211,8 @@ class FirestoreService {\n int buildNumber,\n int index,\n ) async {\n- final record = await getDocumentOrNull('$documents/builds/$builder:$index');\n- if (record == null) {\n+ final data = await getDocumentOrNull('$documents/builds/$builder:$index');",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Keep the name record here. No need for this diff.",
"created_at": "2026-06-26T10:05:03Z",
"updated_at": "2026-06-26T10:05:03Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480644723",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480644723"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480644723"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480644723/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 214,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 99,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480649978",
"pull_request_review_id": 4578594907,
"id": 3480649978,
"node_id": "PRRC_kwDOCp9iHs7PdoD6",
"diff_hunk": "@@ -297,7 +280,7 @@ class FirestoreService {\n final result = change.result;\n final previousResult = change.previousResult;\n final expected = change.expected;\n- final snapshot = await _query<ResultRecord>(\n+ final snapshot = await _query<Document>(",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "This should remain as ResultRecord",
"created_at": "2026-06-26T10:06:10Z",
"updated_at": "2026-06-26T10:06:10Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480649978",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480649978"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480649978"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480649978/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 283,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 126,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480652427",
"pull_request_review_id": 4578597877,
"id": 3480652427,
"node_id": "PRRC_kwDOCp9iHs7PdoqL",
"diff_hunk": "@@ -309,13 +292,14 @@ class FirestoreService {\n limit: 5,\n );\n \n- bool blamelistIncludesChange(ResultRecord document) {\n- final before = endIndex < document.blamelistStartIndex;\n- final after = startIndex > document.blamelistEndIndex;\n+ bool blamelistIncludesChange(Document document) {",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Restore blamelistIncludesChange to the version in split-1",
"created_at": "2026-06-26T10:06:41Z",
"updated_at": "2026-06-26T10:06:41Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480652427",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480652427"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480652427"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480652427/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 295,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 137,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480661827",
"pull_request_review_id": 4578608693,
"id": 3480661827,
"node_id": "PRRC_kwDOCp9iHs7Pdq9D",
"diff_hunk": "@@ -46,17 +46,6 @@ const fReview = 'review';\n const fRevertOf = 'revert_of';",
"path": "builder/lib/src/result.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Revert changes in this file.",
"created_at": "2026-06-26T10:08:38Z",
"updated_at": "2026-06-26T10:08:38Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480661827",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480661827"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480661827"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480661827/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 46,
"original_line": 46,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 1,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480663694",
"pull_request_review_id": 4578610630,
"id": 3480663694,
"node_id": "PRRC_kwDOCp9iHs7PdraO",
"diff_hunk": "@@ -584,7 +570,7 @@ class FirestoreService {\n log(\n [\n 'Multiple active results for the same configuration and test',\n- ...results,\n+ ...results.map((r) => r.doc),",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Revert this line",
"created_at": "2026-06-26T10:08:59Z",
"updated_at": "2026-06-26T10:08:59Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480663694",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480663694"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480663694"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480663694/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 573,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 220,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480667184",
"pull_request_review_id": 4578614605,
"id": 3480667184,
"node_id": "PRRC_kwDOCp9iHs7PdsQw",
"diff_hunk": "@@ -407,11 +391,14 @@ class FirestoreService {\n }\n }\n \n+ /// Returns all results which are either pinned to or have a range that is\n+ /// this single index. // TODO: rename this function\n Future<List<ResultRecord>> findRevertedChanges(int index) async {\n- final results = await _query<ResultRecord>(\n+ final pinnedResults = await _query<ResultRecord>(",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Accidental removal of split-1 changes.",
"created_at": "2026-06-26T10:09:43Z",
"updated_at": "2026-06-26T10:09:43Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480667184",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480667184"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480667184"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480667184/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 397,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 157,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480668554",
"pull_request_review_id": 4578616428,
"id": 3480668554,
"node_id": "PRRC_kwDOCp9iHs7PdsmK",
"diff_hunk": "@@ -309,13 +292,14 @@ class FirestoreService {\n limit: 5,\n );\n \n- bool blamelistIncludesChange(ResultRecord document) {\n- final before = endIndex < document.blamelistStartIndex;\n- final after = startIndex > document.blamelistEndIndex;\n+ bool blamelistIncludesChange(Document document) {\n+ final record = ResultRecord(document);\n+ final before = endIndex < record.blamelistStartIndex;\n+ final after = startIndex > record.blamelistEndIndex;\n return !before && !after;\n }\n \n- return snapshot.firstWhereOrNull(blamelistIncludesChange)?.doc.name;\n+ return snapshot.firstWhereOrNull(blamelistIncludesChange)?.name;",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Revert this line.",
"created_at": "2026-06-26T10:10:03Z",
"updated_at": "2026-06-26T10:10:03Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480668554",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480668554"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480668554"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480668554/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 302,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 145,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480675822",
"pull_request_review_id": 4578626406,
"id": 3480675822,
"node_id": "PRRC_kwDOCp9iHs7PduXu",
"diff_hunk": "@@ -685,27 +671,27 @@ class FirestoreService {\n }\n \n Future<void> linkCommentsToCommit(int review, int index) async {\n- final comments = await query(\n+ final comments = await _query<Document>(",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "These should be CommentRecord",
"created_at": "2026-06-26T10:11:28Z",
"updated_at": "2026-06-26T10:11:28Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480675822",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480675822"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480675822"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480675822/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 674,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 229,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480686787",
"pull_request_review_id": 4578639620,
"id": 3480686787,
"node_id": "PRRC_kwDOCp9iHs7PdxDD",
"diff_hunk": "@@ -223,7 +235,8 @@ ChangeRecord makeChange(\n 'commit_hash': commit,\n 'previous_commit_hash': previousCommit,\n };\n- return ChangeRecord.fromMap(change);\n+ final record = ChangeRecord.fromMap(change);",
"path": "builder/test/approvals_test.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "undo changes to this line",
"created_at": "2026-06-26T10:13:47Z",
"updated_at": "2026-06-26T10:13:47Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480686787",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480686787"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480686787"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480686787/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 238,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 169,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480692637",
"pull_request_review_id": 4578646183,
"id": 3480692637,
"node_id": "PRRC_kwDOCp9iHs7Pdyed",
"diff_hunk": "@@ -399,24 +417,26 @@ Future<void> checkTryBuild(\n }) async {\n final buildbucketId = 'bbID_$name';\n final buildDocuments = await firestore.query(\n- from: 'try_builds',\n- where: fieldEquals('buildbucket_id', buildbucketId),\n+ StructuredQuery()\n+ ..from = inCollection('try_builds')\n+ ..where = fieldEquals('buildbucket_id', buildbucketId),\n );\n expect(buildDocuments.length, 1);\n- final document = buildDocuments.single;\n- expect(document.getBool('success'), success);\n+ final record = TryBuildRecord(buildDocuments.single);\n+ expect(record.success, success);\n if (truncated != null) {\n- expect(document.getBool('truncated'), truncated);\n+ expect(record.truncated, truncated);\n } else {\n- expect(document.fields.containsKey('truncated'), isFalse);\n+ expect(record.doc.fields!.containsKey('truncated'), isFalse);\n }\n }\n \n Future<void> checkBuild(String? builder, String index, {bool? success}) async {\n final document = await firestore.getDocument(",
"path": "builder/test/approvals_test.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "It would be better to make getDocument generic and use the specific types expected wherever it's used.",
"created_at": "2026-06-26T10:15:00Z",
"updated_at": "2026-06-26T10:15:00Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480692637",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480692637"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480692637"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480692637/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 435,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 283,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480694791",
"pull_request_review_id": 4578648424,
"id": 3480694791,
"node_id": "PRRC_kwDOCp9iHs7PdzAH",
"diff_hunk": "@@ -433,13 +453,13 @@ Future<void> checkResult(\n );\n expect(resultName, isNotNull);\n final resultDocument = await firestore.getDocument(resultName!);\n- final data = untagMap(resultDocument.fields!);\n- expect(data[fName], change.name);\n- expect(data[fBlamelistStartIndex], int.parse(startIndex));\n- expect(data[fBlamelistEndIndex], int.parse(endIndex));\n+ final record = ResultRecord(resultDocument);",
"path": "builder/test/approvals_test.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Leave data as the variable name here to make the diff less confusing.",
"created_at": "2026-06-26T10:15:28Z",
"updated_at": "2026-06-26T10:15:28Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480694791",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480694791"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3480694791"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3480694791/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 456,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 300,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504724214",
"pull_request_review_id": 4607546030,
"id": 3504724214,
"node_id": "PRRC_kwDOCp9iHs7Q5dj2",
"diff_hunk": "@@ -687,27 +672,27 @@ class FirestoreService {\n }\n \n Future<void> linkCommentsToCommit(int review, int index) async {\n- final comments = await query(\n+ final comments = await _query<CommentRecord>(\n from: 'comments',\n where: fieldEquals('review', review),\n );\n if (comments.isEmpty) return;\n final writes = <Write>[];\n for (final document in comments) {\n- document.fields['blamelist_start_index'] = taggedValue(index);\n- document.fields['blamelist_end_index'] = taggedValue(index);\n+ document.doc.fields!['blamelist_start_index'] = taggedValue(index);",
"path": "builder/lib/src/firestore.dart",
"commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"original_commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "These should be setters on CommentRecord.",
"created_at": "2026-07-01T09:24:40Z",
"updated_at": "2026-07-01T09:24:40Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504724214",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504724214"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504724214"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504724214/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 682,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 222,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504731615",
"pull_request_review_id": 4607554442,
"id": 3504731615,
"node_id": "PRRC_kwDOCp9iHs7Q5fXf",
"diff_hunk": "@@ -110,48 +118,52 @@ Future<void> removeBuildersAndResults() async {\n Future<void> loadTestCommits(int startIndex) async {\n // Get review data for the last two landed CLs before or at startIndex.\n final reviews = await firestore.query(\n- from: 'reviews',\n- orderBy: orderBy('landed_index', false),\n- where: fieldLessThanOrEqual('landed_index', startIndex),\n- limit: 2,\n+ StructuredQuery()\n+ ..from = inCollection('reviews')\n+ ..orderBy = [orderBy('landed_index', false)]\n+ ..where = fieldLessThanOrEqual('landed_index', startIndex)\n+ ..limit = 2,\n );\n- final firstReview = reviews.first;\n- index1 = firstReview.fields['landed_index']!.integerValue!;\n- review = firstReview.name.split('/').last;\n- final secondReview = reviews.last;\n- index2 = secondReview.fields['landed_index']!.integerValue!;\n- review2 = secondReview.name.split('/').last;\n+ final firstReview = ReviewRecord(reviews.first);\n+ index1 = firstReview.landedIndex!.toString();",
"path": "builder/test/approvals_test.dart",
"commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"original_commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "index1 should be an int.",
"created_at": "2026-07-01T09:25:44Z",
"updated_at": "2026-07-01T09:25:44Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504731615",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504731615"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504731615"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504731615/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 128,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 109,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504733993",
"pull_request_review_id": 4607557259,
"id": 3504733993,
"node_id": "PRRC_kwDOCp9iHs7Q5f8p",
"diff_hunk": "@@ -110,48 +118,52 @@ Future<void> removeBuildersAndResults() async {\n Future<void> loadTestCommits(int startIndex) async {\n // Get review data for the last two landed CLs before or at startIndex.\n final reviews = await firestore.query(\n- from: 'reviews',\n- orderBy: orderBy('landed_index', false),\n- where: fieldLessThanOrEqual('landed_index', startIndex),\n- limit: 2,\n+ StructuredQuery()\n+ ..from = inCollection('reviews')\n+ ..orderBy = [orderBy('landed_index', false)]\n+ ..where = fieldLessThanOrEqual('landed_index', startIndex)\n+ ..limit = 2,\n );\n- final firstReview = reviews.first;\n- index1 = firstReview.fields['landed_index']!.integerValue!;\n- review = firstReview.name.split('/').last;\n- final secondReview = reviews.last;\n- index2 = secondReview.fields['landed_index']!.integerValue!;\n- review2 = secondReview.name.split('/').last;\n+ final firstReview = ReviewRecord(reviews.first);\n+ index1 = firstReview.landedIndex!.toString();\n+ review = firstReview.review;\n+ final secondReview = ReviewRecord(reviews.last);\n+ index2 = secondReview.landedIndex!.toString();",
"path": "builder/test/approvals_test.dart",
"commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"original_commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "index2 should be an int",
"created_at": "2026-07-01T09:26:05Z",
"updated_at": "2026-07-01T09:26:05Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504733993",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504733993"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504733993"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504733993/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 131,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 112,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504782334",
"pull_request_review_id": 4607616949,
"id": 3504782334,
"node_id": "PRRC_kwDOCp9iHs7Q5rv-",
"diff_hunk": "@@ -67,52 +69,56 @@ Future<void> removeTryBuildersAndResults() async {\n Future<Map<String, String?>> loadTestCommits(int startIndex) async {\n // Get review data for the last two landed CLs before or at startIndex.\n final reviews = await firestore.query(\n- from: 'reviews',\n- orderBy: orderBy('landed_index', false),\n- where: fieldLessThanOrEqual('landed_index', startIndex),\n- limit: 2,\n+ StructuredQuery()\n+ ..from = inCollection('reviews')\n+ ..orderBy = [orderBy('landed_index', false)]\n+ ..where = fieldLessThanOrEqual('landed_index', startIndex)\n+ ..limit = 2,\n );\n- final firstReview = reviews.first;\n- final String? index = firstReview.fields['landed_index']!.integerValue;\n- final String review = firstReview.name.split('/').last;\n- final secondReview = reviews.last;\n- final String landedIndex = secondReview.fields['landed_index']!.integerValue!;\n- final String landedReview = secondReview.name.split('/').last;\n+ final firstReview = ReviewRecord(reviews.first);\n+ final int index = firstReview.landedIndex!;\n+ final String review = firstReview.review;\n+ final secondReview = ReviewRecord(reviews.last);\n+ final int landedIndex = secondReview.landedIndex!;\n+ final String landedReview = secondReview.review;\n // expect(int.parse(index), greaterThan(int.parse(landedIndex)));\n- final String baseIndex = (int.parse(landedIndex) - 1).toString();\n+ final String baseIndex = (landedIndex - 1).toString();",
"path": "builder/test/tryjob_test.dart",
"commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"original_commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "This should be an int",
"created_at": "2026-07-01T09:33:21Z",
"updated_at": "2026-07-01T09:33:21Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504782334",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504782334"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504782334"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504782334/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 85,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 68,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504785709",
"pull_request_review_id": 4607621513,
"id": 3504785709,
"node_id": "PRRC_kwDOCp9iHs7Q5skt",
"diff_hunk": "@@ -67,52 +69,56 @@ Future<void> removeTryBuildersAndResults() async {\n Future<Map<String, String?>> loadTestCommits(int startIndex) async {\n // Get review data for the last two landed CLs before or at startIndex.\n final reviews = await firestore.query(\n- from: 'reviews',\n- orderBy: orderBy('landed_index', false),\n- where: fieldLessThanOrEqual('landed_index', startIndex),\n- limit: 2,\n+ StructuredQuery()\n+ ..from = inCollection('reviews')\n+ ..orderBy = [orderBy('landed_index', false)]\n+ ..where = fieldLessThanOrEqual('landed_index', startIndex)\n+ ..limit = 2,\n );\n- final firstReview = reviews.first;\n- final String? index = firstReview.fields['landed_index']!.integerValue;\n- final String review = firstReview.name.split('/').last;\n- final secondReview = reviews.last;\n- final String landedIndex = secondReview.fields['landed_index']!.integerValue!;\n- final String landedReview = secondReview.name.split('/').last;\n+ final firstReview = ReviewRecord(reviews.first);\n+ final int index = firstReview.landedIndex!;\n+ final String review = firstReview.review;\n+ final secondReview = ReviewRecord(reviews.last);\n+ final int landedIndex = secondReview.landedIndex!;\n+ final String landedReview = secondReview.review;\n // expect(int.parse(index), greaterThan(int.parse(landedIndex)));\n- final String baseIndex = (int.parse(landedIndex) - 1).toString();\n+ final String baseIndex = (landedIndex - 1).toString();\n \n final patchsets = await firestore.query(\n- from: 'patchsets',\n+ StructuredQuery()\n+ ..from = inCollection('patchsets')\n+ ..orderBy = [orderBy('number', true)],\n parent: 'reviews/$review',\n- orderBy: orderBy('number', true),\n );\n- final patchset = patchsets.last.fields['number']!.integerValue;\n+ final patchset = PatchsetRecord(patchsets.last).number.toString();\n final previousPatchset = '1';\n final landedPatchsets = await firestore.query(\n- from: 'patchsets',\n+ StructuredQuery()\n+ ..from = inCollection('patchsets')\n+ ..orderBy = [orderBy('number', true)],\n parent: 'reviews/$landedReview',\n- orderBy: orderBy('number', true),\n );\n- final landedPatchset = landedPatchsets.last.fields['number']!.integerValue;\n+ final landedPatchset = PatchsetRecord(landedPatchsets.last).number.toString();\n \n // Get commit hashes for the landed reviews, and for a commit before them\n var commits = {\n- for (final index in [index, landedIndex, baseIndex])\n- index: (await firestore.query(\n- from: 'commits',\n- where: fieldEquals('index', int.parse(index!)),\n- limit: 1,\n- )).first.name.split('/').last,\n+ for (final idx in [index.toString(), landedIndex.toString(), baseIndex])",
"path": "builder/test/tryjob_test.dart",
"commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"original_commit_id": "713b0fb18a386e87f1bbda500d1f7ee7c4de5a76",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "idx should be an int here\n\nThen below:\ncommits[index.toString()] -> commits[index]\netc.",
"created_at": "2026-07-01T09:33:52Z",
"updated_at": "2026-07-01T09:33:52Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504785709",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504785709"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504785709"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504785709/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": null,
"original_line": 105,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 100,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504859195",
"pull_request_review_id": 4607718201,
"id": 3504859195,
"node_id": "PRRC_kwDOCp9iHs7Q5-g7",
"diff_hunk": "@@ -157,15 +140,15 @@ class FirestoreService {\n }\n \n Future<Commit> getCommitByIndex(int index) async {\n- final response = await query(\n+ final response = await _query<Document>(\n from: 'commits',\n where: fieldEquals('index', index),\n );\n return _commit(response.first);\n }\n \n Future<Commit> getLastCommit() async {\n- final lastCommit = await query(\n+ final lastCommit = await _query<Document>(",
"path": "builder/lib/src/firestore.dart",
"commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "`final lastCommit = await _query<Document>(`\n->\n`final lastCommit = await _query<SafeDocument>(`",
"created_at": "2026-07-01T09:45:20Z",
"updated_at": "2026-07-01T09:45:20Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504859195",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504859195"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504859195"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504859195/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 153,
"original_line": 151,
"side": "RIGHT",
"in_reply_to_id": 3480610689,
"author_association": "MEMBER",
"original_position": 80,
"position": 99,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504860477",
"pull_request_review_id": 4607719511,
"id": 3504860477,
"node_id": "PRRC_kwDOCp9iHs7Q5-09",
"diff_hunk": "@@ -157,15 +140,15 @@ class FirestoreService {\n }\n \n Future<Commit> getCommitByIndex(int index) async {\n- final response = await query(\n+ final response = await _query<Document>(",
"path": "builder/lib/src/firestore.dart",
"commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "`final response = await _query<Document>(`\n->\n`final response = await _query<SafeDocument>(`",
"created_at": "2026-07-01T09:45:32Z",
"updated_at": "2026-07-01T09:45:51Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504860477",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504860477"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504860477"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504860477/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 145,
"original_line": 143,
"side": "RIGHT",
"in_reply_to_id": 3480606267,
"author_association": "MEMBER",
"original_position": 71,
"position": 89,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504866224",
"pull_request_review_id": 4607725713,
"id": 3504866224,
"node_id": "PRRC_kwDOCp9iHs7Q6AOw",
"diff_hunk": "",
"path": "builder/lib/src/firestore.dart",
"commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"original_commit_id": "4ec7d29a69ca4babce2af44eb9fb13aa4d8b601f",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Like new ConfigurationRecord(...)",
"created_at": "2026-07-01T09:46:31Z",
"updated_at": "2026-07-01T09:46:32Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504866224",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504866224"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504866224"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504866224/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 186,
"original_line": 184,
"side": "RIGHT",
"in_reply_to_id": 3480641007,
"author_association": "MEMBER",
"original_position": 1,
"position": 1,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504874340",
"pull_request_review_id": 4607734864,
"id": 3504874340,
"node_id": "PRRC_kwDOCp9iHs7Q6CNk",
"diff_hunk": "@@ -110,51 +118,55 @@ Future<void> removeBuildersAndResults() async {\n Future<void> loadTestCommits(int startIndex) async {\n // Get review data for the last two landed CLs before or at startIndex.\n final reviews = await firestore.query(\n- from: 'reviews',\n- orderBy: orderBy('landed_index', false),\n- where: fieldLessThanOrEqual('landed_index', startIndex),\n- limit: 2,\n+ StructuredQuery()\n+ ..from = inCollection('reviews')\n+ ..orderBy = [orderBy('landed_index', false)]\n+ ..where = fieldLessThanOrEqual('landed_index', startIndex)\n+ ..limit = 2,\n );\n- final firstReview = reviews.first;\n- index1 = firstReview.fields['landed_index']!.integerValue!;\n- review = firstReview.name.split('/').last;\n- final secondReview = reviews.last;\n- index2 = secondReview.fields['landed_index']!.integerValue!;\n- review2 = secondReview.name.split('/').last;\n- index3 = (int.parse(index2) - 1).toString();\n- index4 = (int.parse(index2) - 2).toString();\n+ final firstReview = ReviewRecord(reviews.first);\n+ index1 = firstReview.landedIndex!;\n+ review = firstReview.review;\n+ final secondReview = ReviewRecord(reviews.last);\n+ index2 = secondReview.landedIndex!;\n+ review2 = secondReview.review;\n+ index3 = (index2 - 1).toString();\n+ index4 = (index2 - 2).toString();\n \n final patchsets = await firestore.query(\n- from: 'patchsets',\n+ StructuredQuery()\n+ ..from = inCollection('patchsets')\n+ ..orderBy = [orderBy('number', true)],\n parent: 'reviews/$review',\n- orderBy: orderBy('number', true),\n );\n- final patchsetFields = patchsets.last.fields;\n- lastPatchset = patchsetFields['number']!.integerValue!;\n+ final patchsetRecord = PatchsetRecord(patchsets.last);\n+ lastPatchset = patchsetRecord.number;\n lastPatchsetRef = 'refs/changes/$review/$lastPatchset';\n- patchsetGroup = patchsetFields['patchset_group']!.integerValue!;\n+ patchsetGroup = patchsetRecord.patchsetGroup;\n patchsetGroupRef = 'refs/changes/$review/$patchsetGroup';\n- earlyPatchset = '1';\n+ earlyPatchset = 1;\n earlyPatchsetRef = 'refs/changes/$review/$earlyPatchset';\n final patchsets2 = await firestore.query(\n- from: 'patchsets',\n+ StructuredQuery()\n+ ..from = inCollection('patchsets')\n+ ..orderBy = [orderBy('number', true)],\n parent: 'reviews/$review2',\n- orderBy: orderBy('number', true),\n );\n- patchset2 = patchsets2.last.fields['number']!.integerValue!;\n+ patchset2 = PatchsetRecord(patchsets2.last).number;\n patchset2Ref = 'refs/changes/$review/$patchset2';\n \n // Get commit hashes for the landed reviews, and for a commit before them\n var commits = {\n- for (final index in [index1, index2, index3, index4])\n- index: (await firestore.query(\n- from: 'commits',\n- where: fieldEquals('index', int.parse(index)),\n- limit: 1,\n- )).first.name.split('/').last,\n+ for (final index in [index1, index2, int.parse(index3), int.parse(index4)])",
"path": "builder/test/approvals_test.dart",
"commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"original_commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "index3 and index4 should be ints.",
"created_at": "2026-07-01T09:47:56Z",
"updated_at": "2026-07-01T09:47:56Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504874340",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504874340"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504874340"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504874340/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 160,
"original_line": 160,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 163,
"position": 163,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504877682",
"pull_request_review_id": 4607738454,
"id": 3504877682,
"node_id": "PRRC_kwDOCp9iHs7Q6DBy",
"diff_hunk": "@@ -110,51 +118,55 @@ Future<void> removeBuildersAndResults() async {\n Future<void> loadTestCommits(int startIndex) async {\n // Get review data for the last two landed CLs before or at startIndex.\n final reviews = await firestore.query(\n- from: 'reviews',\n- orderBy: orderBy('landed_index', false),\n- where: fieldLessThanOrEqual('landed_index', startIndex),\n- limit: 2,\n+ StructuredQuery()\n+ ..from = inCollection('reviews')\n+ ..orderBy = [orderBy('landed_index', false)]\n+ ..where = fieldLessThanOrEqual('landed_index', startIndex)\n+ ..limit = 2,\n );\n- final firstReview = reviews.first;\n- index1 = firstReview.fields['landed_index']!.integerValue!;\n- review = firstReview.name.split('/').last;\n- final secondReview = reviews.last;\n- index2 = secondReview.fields['landed_index']!.integerValue!;\n- review2 = secondReview.name.split('/').last;\n- index3 = (int.parse(index2) - 1).toString();\n- index4 = (int.parse(index2) - 2).toString();\n+ final firstReview = ReviewRecord(reviews.first);\n+ index1 = firstReview.landedIndex!;\n+ review = firstReview.review;\n+ final secondReview = ReviewRecord(reviews.last);\n+ index2 = secondReview.landedIndex!;\n+ review2 = secondReview.review;\n+ index3 = (index2 - 1).toString();\n+ index4 = (index2 - 2).toString();\n \n final patchsets = await firestore.query(\n- from: 'patchsets',\n+ StructuredQuery()\n+ ..from = inCollection('patchsets')\n+ ..orderBy = [orderBy('number', true)],\n parent: 'reviews/$review',\n- orderBy: orderBy('number', true),\n );\n- final patchsetFields = patchsets.last.fields;\n- lastPatchset = patchsetFields['number']!.integerValue!;\n+ final patchsetRecord = PatchsetRecord(patchsets.last);\n+ lastPatchset = patchsetRecord.number;\n lastPatchsetRef = 'refs/changes/$review/$lastPatchset';\n- patchsetGroup = patchsetFields['patchset_group']!.integerValue!;\n+ patchsetGroup = patchsetRecord.patchsetGroup;\n patchsetGroupRef = 'refs/changes/$review/$patchsetGroup';\n- earlyPatchset = '1';\n+ earlyPatchset = 1;\n earlyPatchsetRef = 'refs/changes/$review/$earlyPatchset';\n final patchsets2 = await firestore.query(\n- from: 'patchsets',\n+ StructuredQuery()\n+ ..from = inCollection('patchsets')\n+ ..orderBy = [orderBy('number', true)],\n parent: 'reviews/$review2',\n- orderBy: orderBy('number', true),\n );\n- patchset2 = patchsets2.last.fields['number']!.integerValue!;\n+ patchset2 = PatchsetRecord(patchsets2.last).number;\n patchset2Ref = 'refs/changes/$review/$patchset2';\n \n // Get commit hashes for the landed reviews, and for a commit before them\n var commits = {\n- for (final index in [index1, index2, index3, index4])\n- index: (await firestore.query(\n- from: 'commits',\n- where: fieldEquals('index', int.parse(index)),\n- limit: 1,\n- )).first.name.split('/').last,\n+ for (final index in [index1, index2, int.parse(index3), int.parse(index4)])\n+ index.toString(): (await firestore.query(",
"path": "builder/test/approvals_test.dart",
"commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"original_commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Remove the toString() here.",
"created_at": "2026-07-01T09:48:27Z",
"updated_at": "2026-07-01T09:48:27Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504877682",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504877682"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504877682"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504877682/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 161,
"original_line": 161,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 164,
"position": 164,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504887655",
"pull_request_review_id": 4607749237,
"id": 3504887655,
"node_id": "PRRC_kwDOCp9iHs7Q6Fdn",
"diff_hunk": "@@ -399,47 +416,48 @@ Future<void> checkTryBuild(\n }) async {\n final buildbucketId = 'bbID_$name';\n final buildDocuments = await firestore.query(\n- from: 'try_builds',\n- where: fieldEquals('buildbucket_id', buildbucketId),\n+ StructuredQuery()\n+ ..from = inCollection('try_builds')\n+ ..where = fieldEquals('buildbucket_id', buildbucketId),\n );\n expect(buildDocuments.length, 1);\n- final document = buildDocuments.single;\n- expect(document.getBool('success'), success);\n+ final record = TryBuildRecord(buildDocuments.single);\n+ expect(record.success, success);\n if (truncated != null) {\n- expect(document.getBool('truncated'), truncated);\n+ expect(record.truncated, truncated);\n } else {\n- expect(document.fields.containsKey('truncated'), isFalse);\n+ expect(record.doc.fields!.containsKey('truncated'), isFalse);\n }\n }\n \n-Future<void> checkBuild(String? builder, String index, {bool? success}) async {\n- final document = await firestore.getDocument(\n+Future<void> checkBuild(String? builder, Object index, {bool? success}) async {",
"path": "builder/test/approvals_test.dart",
"commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"original_commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "index should be int.",
"created_at": "2026-07-01T09:50:09Z",
"updated_at": "2026-07-01T09:50:09Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504887655",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504887655"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504887655"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504887655/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 433,
"original_line": 433,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 292,
"position": 292,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504889369",
"pull_request_review_id": 4607751078,
"id": 3504889369,
"node_id": "PRRC_kwDOCp9iHs7Q6F4Z",
"diff_hunk": "@@ -399,47 +416,48 @@ Future<void> checkTryBuild(\n }) async {\n final buildbucketId = 'bbID_$name';\n final buildDocuments = await firestore.query(\n- from: 'try_builds',\n- where: fieldEquals('buildbucket_id', buildbucketId),\n+ StructuredQuery()\n+ ..from = inCollection('try_builds')\n+ ..where = fieldEquals('buildbucket_id', buildbucketId),\n );\n expect(buildDocuments.length, 1);\n- final document = buildDocuments.single;\n- expect(document.getBool('success'), success);\n+ final record = TryBuildRecord(buildDocuments.single);\n+ expect(record.success, success);\n if (truncated != null) {\n- expect(document.getBool('truncated'), truncated);\n+ expect(record.truncated, truncated);\n } else {\n- expect(document.fields.containsKey('truncated'), isFalse);\n+ expect(record.doc.fields!.containsKey('truncated'), isFalse);\n }\n }\n \n-Future<void> checkBuild(String? builder, String index, {bool? success}) async {\n- final document = await firestore.getDocument(\n+Future<void> checkBuild(String? builder, Object index, {bool? success}) async {\n+ final record = await firestore.getDocument<BuildRecord>(\n '${firestore.documents}/builds/$builder:$index',\n );\n- expect(document.fields!['success']!.booleanValue, success);\n+ expect(record.success, success);\n }\n \n Future<void> checkResult(\n ChangeRecord change,\n- String startIndex,\n- String endIndex,\n+ Object startIndex,",
"path": "builder/test/approvals_test.dart",
"commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"original_commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "startIndex and endIndex should be ints",
"created_at": "2026-07-01T09:50:26Z",
"updated_at": "2026-07-01T09:50:26Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504889369",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504889369"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504889369"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504889369/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 442,
"original_line": 442,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 304,
"position": 304,
"subject_type": "line"
},
{
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504892403",
"pull_request_review_id": 4607754689,
"id": 3504892403,
"node_id": "PRRC_kwDOCp9iHs7Q6Gnz",
"diff_hunk": "@@ -144,7 +144,7 @@ class FirestoreServiceFake implements FirestoreService {\n @override\n Future<bool> updateResult(\n String resultId,\n- String configuration,\n+ String? configuration,",
"path": "builder/test/fakes.dart",
"commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"original_commit_id": "888d1c6c8bafa9d941174c56cafd6647eee61559",
"user": {
"login": "athomas",
"id": 19993735,
"node_id": "MDQ6VXNlcjE5OTkzNzM1",
"avatar_url": "https://avatars.githubusercontent.com/u/19993735?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/athomas",
"html_url": "https://github.com/athomas",
"followers_url": "https://api.github.com/users/athomas/followers",
"following_url": "https://api.github.com/users/athomas/following{/other_user}",
"gists_url": "https://api.github.com/users/athomas/gists{/gist_id}",
"starred_url": "https://api.github.com/users/athomas/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/athomas/subscriptions",
"organizations_url": "https://api.github.com/users/athomas/orgs",
"repos_url": "https://api.github.com/users/athomas/repos",
"events_url": "https://api.github.com/users/athomas/events{/privacy}",
"received_events_url": "https://api.github.com/users/athomas/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "This should remain non-nullable",
"created_at": "2026-07-01T09:50:57Z",
"updated_at": "2026-07-01T09:50:57Z",
"html_url": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504892403",
"pull_request_url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212",
"_links": {
"self": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504892403"
},
"html": {
"href": "https://github.com/dart-lang/dart_ci/pull/212#discussion_r3504892403"
},
"pull_request": {
"href": "https://api.github.com/repos/dart-lang/dart_ci/pulls/212"
}
},
"reactions": {
"url": "https://api.github.com/repos/dart-lang/dart_ci/pulls/comments/3504892403/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"start_line": null,
"original_start_line": null,
"start_side": null,
"line": 147,
"original_line": 147,
"side": "RIGHT",
"author_association": "MEMBER",
"original_position": 5,
"position": 5,
"subject_type": "line"
}
]