Invoke content_hash.py before calling engine builders

Change-Id: I9a0f6da9b37ac1e130cb0c90f2570d07f52237bf
Bug: https://github.com/flutter/flutter/issues/173638
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/68761
Reviewed-by: John McDole <codefu@google.com>
Commit-Queue: Matan Lurey <matanl@google.com>
diff --git a/recipes/release/release_builder.expected/base_linux_beta_monorepo.json b/recipes/release/release_builder.expected/base_linux_beta_monorepo.json
index f6e48e3..719c9bc 100644
--- a/recipes/release/release_builder.expected/base_linux_beta_monorepo.json
+++ b/recipes/release/release_builder.expected/base_linux_beta_monorepo.json
@@ -382,6 +382,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -410,7 +434,7 @@
       }
     },
     "name": "engine.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/beta\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"beta\", \"main\"], \"name\": \"linux packaging one\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/beta\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"beta\", \"main\"], \"name\": \"linux packaging one\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"content_hash\": \"\", \"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -483,12 +507,14 @@
       "@@@STEP_LOG_LINE@request@              \"$flutter/osx_sdk\": {@@@",
       "@@@STEP_LOG_LINE@request@                \"sdk_version\": \"14a5294e\"@@@",
       "@@@STEP_LOG_LINE@request@              },@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\",@@@",
       "@@@STEP_LOG_LINE@request@            \"scheduler\": \"release\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/base_linux_main_monorepo.json b/recipes/release/release_builder.expected/base_linux_main_monorepo.json
index 59f256f..54e3183 100644
--- a/recipes/release/release_builder.expected/base_linux_main_monorepo.json
+++ b/recipes/release/release_builder.expected/base_linux_main_monorepo.json
@@ -383,6 +383,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -411,7 +435,7 @@
       }
     },
     "name": "engine.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/main\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"linux one\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/main\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"linux one\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -480,12 +504,14 @@
       "@@@STEP_LOG_LINE@request@              \"$flutter/osx_sdk\": {@@@",
       "@@@STEP_LOG_LINE@request@                \"sdk_version\": \"14a5294e\"@@@",
       "@@@STEP_LOG_LINE@request@              },@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"engine/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
@@ -521,6 +547,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash (2)",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id (2)",
     "~followup_annotations": [
@@ -549,7 +599,7 @@
       }
     },
     "name": "engine.launch builds.schedule (2)",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/main\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"beta\", \"main\"], \"name\": \"linux packaging one\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/main\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"beta\", \"main\"], \"name\": \"linux packaging one\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"content_hash\": \"\", \"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -622,12 +672,14 @@
       "@@@STEP_LOG_LINE@request@              \"$flutter/osx_sdk\": {@@@",
       "@@@STEP_LOG_LINE@request@                \"sdk_version\": \"14a5294e\"@@@",
       "@@@STEP_LOG_LINE@request@              },@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\",@@@",
       "@@@STEP_LOG_LINE@request@            \"scheduler\": \"release\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/filter_disabled_by_top_level_target.json b/recipes/release/release_builder.expected/filter_disabled_by_top_level_target.json
index 1db8fed..59f25eb 100644
--- a/recipes/release/release_builder.expected/filter_disabled_by_top_level_target.json
+++ b/recipes/release/release_builder.expected/filter_disabled_by_top_level_target.json
@@ -396,6 +396,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -424,7 +448,7 @@
       }
     },
     "name": "engine.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"Linux implicity_disabled_by_top_level\", \"properties\": {\"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"Linux implicity_disabled_by_top_level\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -498,12 +522,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux implicity_disabled_by_top_level\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"engine/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
@@ -539,6 +565,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash (2)",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id (2)",
     "~followup_annotations": [
@@ -567,7 +617,7 @@
       }
     },
     "name": "engine.launch builds.schedule (2)",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-\\\\d+\\\\.\\\\d+-candidate\\\\.\\\\d+\"], \"name\": \"Linux explicitly_enabled_by_target\", \"properties\": {\"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-\\\\d+\\\\.\\\\d+-candidate\\\\.\\\\d+\"], \"name\": \"Linux explicitly_enabled_by_target\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -634,12 +684,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux explicitly_enabled_by_target\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"engine/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/filter_enabled_branches.json b/recipes/release/release_builder.expected/filter_enabled_branches.json
index 8470eae..fccea43 100644
--- a/recipes/release/release_builder.expected/filter_enabled_branches.json
+++ b/recipes/release/release_builder.expected/filter_enabled_branches.json
@@ -384,6 +384,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -412,7 +436,7 @@
       }
     },
     "name": "engine.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Linux flutter_test\", \"properties\": {\"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Linux flutter_test\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -479,12 +503,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux flutter_test\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
@@ -520,6 +546,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash (2)",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id (2)",
     "~followup_annotations": [
@@ -548,7 +598,7 @@
       }
     },
     "name": "engine.launch builds.schedule (2)",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Mac Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Mac\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Mac flutter_test\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Mac Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Mac\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Mac flutter_test\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -621,12 +671,14 @@
       "@@@STEP_LOG_LINE@request@              \"$flutter/osx_sdk\": {@@@",
       "@@@STEP_LOG_LINE@request@                \"sdk_version\": \"14a5294e\"@@@",
       "@@@STEP_LOG_LINE@request@              },@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/filter_enabled_by_top_level_target.json b/recipes/release/release_builder.expected/filter_enabled_by_top_level_target.json
index 8b84a96..c361483 100644
--- a/recipes/release/release_builder.expected/filter_enabled_by_top_level_target.json
+++ b/recipes/release/release_builder.expected/filter_enabled_by_top_level_target.json
@@ -396,6 +396,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -424,7 +448,7 @@
       }
     },
     "name": "engine.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"Linux implicity_enabled_by_top_level\", \"properties\": {\"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"Linux implicity_enabled_by_top_level\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -498,12 +522,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux implicity_enabled_by_top_level\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"engine/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
@@ -539,6 +565,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash (2)",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id (2)",
     "~followup_annotations": [
@@ -567,7 +617,7 @@
       }
     },
     "name": "engine.launch builds.schedule (2)",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-\\\\d+\\\\.\\\\d+-candidate\\\\.\\\\d+\"], \"name\": \"Linux explicitly_enabled_by_target\", \"properties\": {\"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-\\\\d+\\\\.\\\\d+-candidate\\\\.\\\\d+\"], \"name\": \"Linux explicitly_enabled_by_target\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -634,12 +684,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux explicitly_enabled_by_target\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"engine/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/filter_git_ref_not_stable_or_beta_on_release_channel.json b/recipes/release/release_builder.expected/filter_git_ref_not_stable_or_beta_on_release_channel.json
index 00b865b..82f8ef6 100644
--- a/recipes/release/release_builder.expected/filter_git_ref_not_stable_or_beta_on_release_channel.json
+++ b/recipes/release/release_builder.expected/filter_git_ref_not_stable_or_beta_on_release_channel.json
@@ -502,6 +502,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "framework.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "framework.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -530,7 +554,7 @@
       }
     },
     "name": "framework.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/beta\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"beta\", \"stable\"], \"name\": \"Linux only_enabled_for_release_channels\", \"properties\": {\"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/beta\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"beta\", \"stable\"], \"name\": \"Linux only_enabled_for_release_channels\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -598,12 +622,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux only_enabled_for_release_channels\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\",@@@",
       "@@@STEP_LOG_LINE@request@            \"scheduler\": \"release\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/filter_targets_not_on_current_platform.json b/recipes/release/release_builder.expected/filter_targets_not_on_current_platform.json
index 1bb1960..41d61b5 100644
--- a/recipes/release/release_builder.expected/filter_targets_not_on_current_platform.json
+++ b/recipes/release/release_builder.expected/filter_targets_not_on_current_platform.json
@@ -473,6 +473,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "framework.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "framework.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -501,7 +525,7 @@
       }
     },
     "name": "framework.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/beta\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"beta\"], \"name\": \"Linux is_current_platform\", \"properties\": {\"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/main\"}, \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/beta\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"beta\"], \"name\": \"Linux is_current_platform\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -567,12 +591,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux is_current_platform\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\",@@@",
       "@@@STEP_LOG_LINE@request@            \"scheduler\": \"release\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/linux_engine_monorepo_candidate.json b/recipes/release/release_builder.expected/linux_engine_monorepo_candidate.json
index 2b6ac88..6647696 100644
--- a/recipes/release/release_builder.expected/linux_engine_monorepo_candidate.json
+++ b/recipes/release/release_builder.expected/linux_engine_monorepo_candidate.json
@@ -507,6 +507,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "dart-internal:flutter"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "framework.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "framework.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -535,7 +559,7 @@
       }
     },
     "name": "framework.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"flutter\", \"builder\": \"Linux Production Engine Drone\", \"project\": \"dart-internal\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Linux flutter_test\", \"properties\": {\"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"flutter\", \"builder\": \"Linux Production Engine Drone\", \"project\": \"dart-internal\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Linux flutter_test\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -602,12 +626,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux flutter_test\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
@@ -643,6 +669,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "dart-internal:flutter"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "framework.launch builds.Compute content hash (2)",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "framework.launch builds.get buildbucket id (2)",
     "~followup_annotations": [
@@ -671,7 +721,7 @@
       }
     },
     "name": "framework.launch builds.schedule (2)",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"flutter\", \"builder\": \"Mac Production Engine Drone\", \"project\": \"dart-internal\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Mac\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Mac flutter_test\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"flutter\", \"builder\": \"Mac Production Engine Drone\", \"project\": \"dart-internal\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Mac\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Mac flutter_test\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -744,12 +794,14 @@
       "@@@STEP_LOG_LINE@request@              \"$flutter/osx_sdk\": {@@@",
       "@@@STEP_LOG_LINE@request@                \"sdk_version\": \"14a5294e\"@@@",
       "@@@STEP_LOG_LINE@request@              },@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/linux_schedule_during_release_override.json b/recipes/release/release_builder.expected/linux_schedule_during_release_override.json
index 5e76c5f..f8486d9 100644
--- a/recipes/release/release_builder.expected/linux_schedule_during_release_override.json
+++ b/recipes/release/release_builder.expected/linux_schedule_during_release_override.json
@@ -384,6 +384,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -412,7 +436,7 @@
       }
     },
     "name": "engine.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Linux flutter_test\", \"properties\": {\"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Linux flutter_test\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -479,12 +503,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux flutter_test\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
@@ -520,6 +546,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash (2)",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id (2)",
     "~followup_annotations": [
@@ -548,7 +598,7 @@
       }
     },
     "name": "engine.launch builds.schedule (2)",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Mac Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Mac\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Mac flutter_test\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Mac Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Mac\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Mac flutter_test\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -621,12 +671,14 @@
       "@@@STEP_LOG_LINE@request@              \"$flutter/osx_sdk\": {@@@",
       "@@@STEP_LOG_LINE@request@                \"sdk_version\": \"14a5294e\"@@@",
       "@@@STEP_LOG_LINE@request@              },@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
@@ -881,6 +933,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "framework.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "framework.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -909,7 +985,7 @@
       }
     },
     "name": "framework.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"Linux schedule_during_release_override\", \"properties\": {\"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"schedule_during_release_override\": true}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133d\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"Linux schedule_during_release_override\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"schedule_during_release_override\": true}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133d\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -973,12 +1049,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux schedule_during_release_override\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\",@@@",
       "@@@STEP_LOG_LINE@request@            \"schedule_during_release_override\": true@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/linux_scheduler_release.json b/recipes/release/release_builder.expected/linux_scheduler_release.json
index fab533a..91d4a99 100644
--- a/recipes/release/release_builder.expected/linux_scheduler_release.json
+++ b/recipes/release/release_builder.expected/linux_scheduler_release.json
@@ -384,6 +384,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -412,7 +436,7 @@
       }
     },
     "name": "engine.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Linux flutter_test\", \"properties\": {\"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Linux flutter_test\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -479,12 +503,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux flutter_test\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
@@ -520,6 +546,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash (2)",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id (2)",
     "~followup_annotations": [
@@ -548,7 +598,7 @@
       }
     },
     "name": "engine.launch builds.schedule (2)",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Mac Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Mac\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Mac flutter_test\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Mac Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"build\": {\"drone_dimensions\": [\"os=Mac\"], \"enabled_branches\": [\"flutter-3.2-candidate.5\"], \"name\": \"Mac flutter_test\", \"properties\": {\"$flutter/osx_sdk\": {\"sdk_version\": \"14a5294e\"}, \"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"release/something\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"release_build\": \"true\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133a\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -621,12 +671,14 @@
       "@@@STEP_LOG_LINE@request@              \"$flutter/osx_sdk\": {@@@",
       "@@@STEP_LOG_LINE@request@                \"sdk_version\": \"14a5294e\"@@@",
       "@@@STEP_LOG_LINE@request@              },@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
@@ -881,6 +933,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "framework.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "framework.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -909,7 +985,7 @@
       }
     },
     "name": "framework.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"Linux scheduler_release\", \"properties\": {\"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133d\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"name\": \"Linux scheduler_release\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-00000000133d\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -973,12 +1049,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux scheduler_release\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\",@@@",
       "@@@STEP_LOG_LINE@request@            \"scheduler\": \"release\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/retry_override_skips_config_name_not_matched.json b/recipes/release/release_builder.expected/retry_override_skips_config_name_not_matched.json
index 9fd5213..6bdb731 100644
--- a/recipes/release/release_builder.expected/retry_override_skips_config_name_not_matched.json
+++ b/recipes/release/release_builder.expected/retry_override_skips_config_name_not_matched.json
@@ -385,6 +385,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "engine.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "engine.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -413,7 +437,7 @@
       }
     },
     "name": "engine.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-\\\\d+\\\\.\\\\d+-candidate\\\\.\\\\d+\"], \"name\": \"Linux foo\", \"properties\": {\"config_name\": \"foo\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"config_name\": \"foo\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\", \"retry_override_list\": \"foo\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-\\\\d+\\\\.\\\\d+-candidate\\\\.\\\\d+\"], \"name\": \"Linux foo\", \"properties\": {\"config_name\": \"foo\", \"content_hash\": \"\", \"is_fusion\": \"true\", \"release_build\": \"true\"}, \"recipe\": \"engine/something\"}, \"build_identifier\": \"8945511751514863184\", \"config_name\": \"foo\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"engine/something\", \"release_build\": \"true\", \"repository\": \"flutter\", \"retry_override_list\": \"foo\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -481,6 +505,7 @@
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux foo\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
       "@@@STEP_LOG_LINE@request@              \"config_name\": \"foo\",@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\",@@@",
       "@@@STEP_LOG_LINE@request@              \"release_build\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
@@ -488,6 +513,7 @@
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
       "@@@STEP_LOG_LINE@request@          \"config_name\": \"foo\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.expected/retry_override_still_runs_non_config_name_target.json b/recipes/release/release_builder.expected/retry_override_still_runs_non_config_name_target.json
index 99c4fd2..077d0cb 100644
--- a/recipes/release/release_builder.expected/retry_override_still_runs_non_config_name_target.json
+++ b/recipes/release/release_builder.expected/retry_override_still_runs_non_config_name_target.json
@@ -463,6 +463,30 @@
     ]
   },
   {
+    "cmd": [
+      "bin",
+      "internal",
+      "content_aware_hash.sh"
+    ],
+    "cwd": "[START_DIR]/mirrors/flutter",
+    "luci_context": {
+      "realm": {
+        "name": "prod:try"
+      },
+      "resultdb": {
+        "current_invocation": {
+          "name": "invocations/build:8945511751514863184",
+          "update_token": "token"
+        },
+        "hostname": "rdbhost"
+      }
+    },
+    "name": "framework.launch builds.Compute content hash",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "framework.launch builds.get buildbucket id",
     "~followup_annotations": [
@@ -491,7 +515,7 @@
       }
     },
     "name": "framework.launch builds.schedule",
-    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-\\\\d+\\\\.\\\\d+-candidate\\\\.\\\\d+\"], \"name\": \"Linux only_enabled_for_release_candidates\", \"properties\": {\"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\", \"retry_override_list\": \"foo\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
+    "stdin": "{\"requests\": [{\"scheduleBuild\": {\"builder\": {\"bucket\": \"try\", \"builder\": \"Linux Engine Drone\", \"project\": \"prod\"}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}], \"exe\": {\"cipdVersion\": \"refs/heads/flutter-3.2-candidate.5\"}, \"executionTimeout\": \"14400s\", \"experimental\": \"NO\", \"experiments\": {\"luci.buildbucket.parent_tracking\": false}, \"fields\": \"builder,createTime,createdBy,critical,endTime,id,infra,input,number,output,startTime,status,updateTime\", \"gerritChanges\": [{\"change\": \"123456\", \"host\": \"flutter-review.googlesource.com\", \"patchset\": \"7\", \"project\": \"mirrors/flutter\"}], \"gitilesCommit\": {\"host\": \"flutter.googlesource.com\", \"id\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\", \"project\": \"mirrors/flutter\", \"ref\": \"refs/heads/flutter-3.2-candidate.5\"}, \"priority\": 30, \"properties\": {\"build\": {\"drone_dimensions\": [\"os=Linux\"], \"enabled_branches\": [\"flutter-\\\\d+\\\\.\\\\d+-candidate\\\\.\\\\d+\"], \"name\": \"Linux only_enabled_for_release_candidates\", \"properties\": {\"content_hash\": \"\", \"is_fusion\": \"true\"}, \"recipe\": \"release/something\", \"scheduler\": \"release\"}, \"build_identifier\": \"8945511751514863184\", \"content_hash\": \"\", \"environment\": \"Staging\", \"gclient_variables\": {}, \"is_fusion\": \"true\", \"parent_commit\": \"\", \"recipe\": \"release/something\", \"repository\": \"flutter\", \"retry_override_list\": \"foo\"}, \"requestId\": \"8945511751514863184-00000000-0000-0000-0000-000000001337\", \"swarming\": {\"parentRunId\": \"fake-task-id\"}, \"tags\": [{\"key\": \"cq_experimental\", \"value\": \"false\"}, {\"key\": \"parent_buildbucket_id\", \"value\": \"8945511751514863184\"}, {\"key\": \"user_agent\", \"value\": \"recipe\"}]}}]}",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@2@@@",
       "@@@STEP_LOG_LINE@json.output@{@@@",
@@ -558,12 +582,14 @@
       "@@@STEP_LOG_LINE@request@            ],@@@",
       "@@@STEP_LOG_LINE@request@            \"name\": \"Linux only_enabled_for_release_candidates\",@@@",
       "@@@STEP_LOG_LINE@request@            \"properties\": {@@@",
+      "@@@STEP_LOG_LINE@request@              \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@              \"is_fusion\": \"true\"@@@",
       "@@@STEP_LOG_LINE@request@            },@@@",
       "@@@STEP_LOG_LINE@request@            \"recipe\": \"release/something\",@@@",
       "@@@STEP_LOG_LINE@request@            \"scheduler\": \"release\"@@@",
       "@@@STEP_LOG_LINE@request@          },@@@",
       "@@@STEP_LOG_LINE@request@          \"build_identifier\": \"8945511751514863184\",@@@",
+      "@@@STEP_LOG_LINE@request@          \"content_hash\": \"\",@@@",
       "@@@STEP_LOG_LINE@request@          \"environment\": \"Staging\",@@@",
       "@@@STEP_LOG_LINE@request@          \"gclient_variables\": {},@@@",
       "@@@STEP_LOG_LINE@request@          \"is_fusion\": \"true\",@@@",
diff --git a/recipes/release/release_builder.py b/recipes/release/release_builder.py
index b66c867..cf2c62c 100644
--- a/recipes/release/release_builder.py
+++ b/recipes/release/release_builder.py
@@ -71,6 +71,7 @@
     'flutter/shard_util',
     'flutter/yaml',
     'recipe_engine/buildbucket',
+    'recipe_engine/context',
     'recipe_engine/file',
     'recipe_engine/json',
     'recipe_engine/path',
@@ -179,14 +180,33 @@
   return (repository, url, ref)
 
 
+def ComputeContentHash(
+    api,
+    checkout_path,
+):
+  cmd_content_hash = [
+      'bin',
+      'internal',
+      'content_aware_hash.ps1'
+      if api.m.platform.is_win else 'content_aware_hash.sh',
+  ]
+  with api.context(cwd=checkout_path):
+    return api.step(
+        'Compute content hash',
+        cmd_content_hash,
+        stdout=api.raw_io.output_text(),
+    ).stdout.strip()
+
+
 def ScheduleBuildsForRepo(
     api,
     checkout_path,
+    is_engine,
     git_ref,
     retry_override_list,
     release_branch,
 ):
-  ci_yaml_path = checkout_path / '.ci.yaml'
+  ci_yaml_path = checkout_path / 'engine' / 'src' / 'flutter' / '.ci.yaml' if is_engine else checkout_path / '.ci.yaml'
   ci_yaml = api.yaml.read('read ci yaml', ci_yaml_path, api.json.output())
   tasks = {}
   build_results = []
@@ -208,6 +228,7 @@
       # TODO(matanlurey): Remove after 3.35 is release to stable.
       # https://github.com/flutter/flutter/issues/171023
       properties['is_fusion'] = 'true'
+      properties['content_hash'] = ComputeContentHash(api, checkout_path)
       tasks.update(
           api.shard_util.schedule(
               [target],
@@ -250,7 +271,8 @@
     collect_and_display_builds(
         ScheduleBuildsForRepo(
             api,
-            checkout_path / 'engine' / 'src' / 'flutter',
+            checkout_path,
+            True,
             git_ref,
             retry_override_list,
             release_branch,
@@ -262,6 +284,7 @@
         ScheduleBuildsForRepo(
             api,
             checkout_path,
+            False,
             git_ref,
             retry_override_list,
             release_branch,
@@ -745,9 +768,8 @@
           git_ref='refs/heads/beta',
       ),
       api.step_data(
-          'engine.read ci yaml.parse',
-          api.json.output({
-            'targets': [],
+          'engine.read ci yaml.parse', api.json.output({
+              'targets': [],
           })
       ),
       api.step_data(
@@ -773,9 +795,7 @@
       ),
       api.step_data(
           'Identify branches.git branch',
-          stdout=api.raw_io.output_text(
-              'remotes/origin/beta'
-          )
+          stdout=api.raw_io.output_text('remotes/origin/beta')
       ),
   )
   yield api.test(