diff --git a/tools/android/avd/proto/README.md b/tools/android/avd/proto/README.md
index f049021a..64a175c 100644
--- a/tools/android/avd/proto/README.md
+++ b/tools/android/avd/proto/README.md
@@ -5,11 +5,61 @@
 2. The ones **directly** under this directory are for `avd.py install`
 and `avd.py start`.
 
+## Naming scheme
+As more image types (`google_apis`, `google_atd`, etc.) and cpu architectures
+(`x86`, `x86_64`, etc.) are added, the following naming scheme is suggested to
+use when adding new config files:
+```
+android_<API level>_<image type>_<cpu arch>.textpb
+```
+
+For simplicity, we do the following convention for the cpu architectures, from
+the values in android sdk manager to those in the config file names.
+- `armeabi-v7a` -> `arm`
+- `arm64-v8a` -> `arm64`
+- `x86` -> `x86`
+- `x86_64` -> `x64`
+
+So for a new config that uses API level 31, image type "google_apis", cpu arch
+"x86_64", the file name would be `android_31_google_apis_x64.textpb`
+
 ## Config files for `avd.py create`
 These files are normally used only by the builder
 [android-avd-packager](https://ci.chromium.org/p/chromium/builders/ci/android-avd-packager).
 It is not expected for end users to use them.
 
+For developers who try to create new AVD packages through the above packager,
+instead of triggering one build that re-packages every AVD configs which could
+takes 3+ hours, the following steps can be used to package only certain configs.
+
+- Ensure you have `depot_tools`([link][depot_tools_link]) checked out in your
+  local machine.
+- Create a json file say `android-avd.json` and fill in with the "properties"
+  value from the android-avd-packager ([example][packager_properties_example]).
+  Then remove the unwanted avd configs from the `avd_configs` field.
+
+  Here is an example of a json file that packages only two AVD configs:
+  ```
+  {
+      "$build/avd_packager": {
+          "avd_configs": [
+              "tools/android/avd/proto/creation/android_30_google_atd_x86.textpb",
+              "tools/android/avd/proto/creation/android_30_google_atd_x64.textpb"
+          ],
+          "gclient_config": "chromium",
+          "gclient_apply_config": ["android"]
+      }
+  }
+  ```
+- Call `bb` command to trigger a new build on android-avd-packager with the
+  property file from the above step.
+  ```
+  bb add -p @android-avd.json chromium/ci/android-avd-packager
+  ```
+
+[depot_tools_link]: https://chromium.googlesource.com/chromium/tools/depot_tools/+/HEAD/README.md
+[packager_properties_example]: https://source.chromium.org/chromium/chromium/src/+/main:infra/config/subprojects/chromium/ci/chromium.infra.star;drc=59cbaef70288b956b446139de6c5bc2030bbb277;l=123-157
+
 ## Config files for `avd.py install` and `avd.py start`
 When updating these files, please make sure the versions of emulator
 and system image are the **same** as the tag values in the to-be-updated
diff --git a/tools/binary_size/diagnose_bloat.py b/tools/binary_size/diagnose_bloat.py
index 8af04d2..fcff5b24 100755
--- a/tools/binary_size/diagnose_bloat.py
+++ b/tools/binary_size/diagnose_bloat.py
@@ -32,7 +32,8 @@
 _SUPERSIZE_PATH = os.path.join(_SRC_ROOT, 'tools', 'binary_size', 'supersize')
 _RESOURCE_SIZES_PATH = os.path.join(
     _SRC_ROOT, 'build', 'android', 'resource_sizes.py')
-_GN_PATH = os.path.join(_SRC_ROOT, 'third_party', 'depot_tools', 'gn')
+_AUTONINJA_PATH = shutil.which('autoninja')
+_GN_PATH = shutil.which('gn')
 _LLVM_TOOLS_DIR = os.path.join(_SRC_ROOT, 'third_party', 'llvm-build',
                                'Release+Asserts', 'bin')
 _CLANG_UPDATE_PATH = os.path.join(_SRC_ROOT, 'tools', 'clang', 'scripts',
@@ -237,7 +238,7 @@
     self.output_directory = args.output_directory
     self.target = args.target
     self.target_os = args.target_os
-    self.use_goma = args.use_goma
+    self.use_reclient = args.use_reclient
     self.apk_name_override = args.custom_apk_name
     self.main_lib_path_override = args.custom_main_lib_path
     self._SetDefaults()
@@ -274,7 +275,8 @@
     # my_great_apk -> MyGreat.apk
     apk_name = ''.join(s.title() for s in self.target.split('_')[:-1]) + '.apk'
     if self.is_bundle:
-      # trichrome_minimal_apks->TrichromeMinimal.apk->Trichrome.minimal.apks
+      # trichrome_32_minimal_apks -> Trichrome32Minimal.apk
+      #                           -> Trichrome32.minimal.apks
       apk_name = apk_name.replace('Minimal.apk', '.minimal.apks')
     return apk_name.replace('Webview', 'WebView')
 
@@ -327,19 +329,6 @@
     return self.apk_name + '.size'
 
   def _SetDefaults(self):
-    if self.use_goma:
-      try:
-        goma_is_running = not subprocess.call(['goma_ctl', 'status'],
-                                              stdout=subprocess.DEVNULL,
-                                              stderr=subprocess.DEVNULL)
-        self.use_goma = self.use_goma and goma_is_running
-      except Exception:
-        # goma_ctl not in PATH.
-        self.use_goma = False
-
-      if not self.use_goma:
-        logging.warning('GOMA not running. Setting use_goma=false.')
-
     has_internal = os.path.exists(os.path.join(_SRC_ROOT, 'internal'))
     if has_internal:
       self.extra_gn_args_str = (
@@ -357,9 +346,9 @@
       if self.IsLinux():
         self.target = 'chrome'
       elif self.enable_chrome_android_internal:
-        self.target = 'trichrome_google_minimal_apks'
+        self.target = 'trichrome_google_32_minimal_apks'
       else:
-        self.target = 'trichrome_minimal_apks'
+        self.target = 'trichrome_32_minimal_apks'
 
   def _GenGnCmd(self):
     gn_args = 'is_official_build=true'
@@ -373,7 +362,7 @@
     # Compiles need at least symbol_level=1 for pak allowlist to work.
     gn_args += ' symbol_level=1'
     gn_args += ' use_errorprone_java_compiler=false'
-    gn_args += ' use_goma=%s' % str(self.use_goma).lower()
+    gn_args += ' use_remoteexec=%s' % str(self.use_reclient).lower()
     gn_args += ' target_os="%s"' % self.target_os
     if self.IsAndroid():
       gn_args += (' enable_chrome_android_internal=%s' %
@@ -382,7 +371,7 @@
     return [_GN_PATH, 'gen', self.output_directory, '--args=%s' % gn_args]
 
   def _GenNinjaCmd(self):
-    cmd = ['autoninja', '-C', self.output_directory]
+    cmd = [_AUTONINJA_PATH, '-C', self.output_directory]
     cmd += [self.target]
     return cmd
 
@@ -398,8 +387,10 @@
                       exit_on_failure=False)[1]
     if retcode:
       return retcode
-    return _RunCmd(
-        self._GenNinjaCmd(), verbose=True, exit_on_failure=False)[1]
+    return _RunCmd(self._GenNinjaCmd(),
+                   cwd=_SRC_ROOT,
+                   verbose=True,
+                   exit_on_failure=False)[1]
 
   def IsAndroid(self):
     return self.target_os == 'android'
@@ -901,11 +892,11 @@
                       help='Automatically upload using gsutil.py.')
 
   build_group = parser.add_argument_group('build arguments')
-  build_group.add_argument('--no-goma',
+  build_group.add_argument('--no-reclient',
                            action='store_false',
-                           dest='use_goma',
+                           dest='use_reclient',
                            default=True,
-                           help='Do not use goma when building with ninja.')
+                           help='Do not use reclient when building with ninja.')
   build_group.add_argument('--clean',
                            action='store_true',
                            help='Do a clean build for each revision.')
@@ -925,8 +916,8 @@
                            help='Allow downstream targets to be built.')
   build_group.add_argument('--target',
                            help='GN target to build. Linux default: chrome. '
-                           'Android default: trichrome_minimal_apks or '
-                           'trichrome_google_minimal_apks (depending on '
+                           'Android default: trichrome_32_minimal_apks or '
+                           'trichrome_google_32_minimal_apks (depending on '
                            '--enable-chrome-android-internal).')
   build_group.add_argument('--custom-apk-name',
                            help='The apk name by default is derived from the '
@@ -953,6 +944,11 @@
   if args.target and args.target.endswith('_bundle'):
     parser.error('Bundle targets must use _minimal_apks variants')
 
+  if _GN_PATH is None:
+    parser.error('Could not find "gn" on your PATH')
+  if _AUTONINJA_PATH is None:
+    parser.error('Could not find "autoninja" on your PATH')
+
   build = _BuildHelper(args)
   subrepo = args.subrepo or _SRC_ROOT
   _EnsureDirectoryClean(subrepo)
diff --git a/tools/clang/plugins/RawPtrHelpers.h b/tools/clang/plugins/RawPtrHelpers.h
index a36c1b8..42a380f 100644
--- a/tools/clang/plugins/RawPtrHelpers.h
+++ b/tools/clang/plugins/RawPtrHelpers.h
@@ -121,8 +121,8 @@
   std::string filename = GetFilename(Finder->getASTContext().getSourceManager(),
                                      Node.getSourceRange().getBegin());
   return filename.find(
-             "base/allocator/partition_allocator/pointers/raw_ptr_cast.h") !=
-         std::string::npos;
+             "base/allocator/partition_allocator/src/partition_alloc/pointers/"
+             "raw_ptr_cast.h") != std::string::npos;
 }
 
 AST_POLYMORPHIC_MATCHER(isInGeneratedLocation,
diff --git a/tools/clang/plugins/tests/bad_raw_ptr_cast_kinds.txt b/tools/clang/plugins/tests/bad_raw_ptr_cast_kinds.txt
index 3523478..0ca456d 100644
--- a/tools/clang/plugins/tests/bad_raw_ptr_cast_kinds.txt
+++ b/tools/clang/plugins/tests/bad_raw_ptr_cast_kinds.txt
@@ -4,13 +4,13 @@
 bad_raw_ptr_cast_kinds.cpp:56:9: error: no matching conversion for static_cast from 'RawPtrWrapper' to 'raw_ptr<int>'
   (void)static_cast<raw_ptr<int>>(wrapped);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-./base/allocator/partition_allocator/pointers/raw_ptr.h:11:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'RawPtrWrapper' to 'const raw_ptr<int>' for 1st argument
+./base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h:11:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'RawPtrWrapper' to 'const raw_ptr<int>' for 1st argument
 class raw_ptr {
       ^~~~~~~
-./base/allocator/partition_allocator/pointers/raw_ptr.h:11:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from 'RawPtrWrapper' to 'raw_ptr<int>' for 1st argument
+./base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h:11:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from 'RawPtrWrapper' to 'raw_ptr<int>' for 1st argument
 class raw_ptr {
       ^~~~~~~
-./base/allocator/partition_allocator/pointers/raw_ptr.h:11:7: note: candidate constructor (the implicit default constructor) not viable: requires 0 arguments, but 1 was provided
+./base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h:11:7: note: candidate constructor (the implicit default constructor) not viable: requires 0 arguments, but 1 was provided
 bad_raw_ptr_cast_kinds.cpp:57:9: error: cannot cast from type 'RawPtrWrapper' to pointer type 'int *'
   (void)static_cast<int*>(wrapped);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/tools/clang/plugins/tests/base/allocator/partition_allocator/pointers/raw_ptr.h b/tools/clang/plugins/tests/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h
similarity index 79%
rename from tools/clang/plugins/tests/base/allocator/partition_allocator/pointers/raw_ptr.h
rename to tools/clang/plugins/tests/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h
index edf2516..5c8daf61 100644
--- a/tools/clang/plugins/tests/base/allocator/partition_allocator/pointers/raw_ptr.h
+++ b/tools/clang/plugins/tests/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_POINTERS_RAW_PTR_H_
-#define TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_POINTERS_RAW_PTR_H_
+#ifndef TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_POINTERS_RAW_PTR_H_
+#define TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_POINTERS_RAW_PTR_H_
 
 namespace base {
 
@@ -22,4 +22,4 @@
 using base::raw_ptr;
 using base::raw_ref;
 
-#endif  // TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_POINTERS_RAW_PTR_H_
+#endif  // TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_POINTERS_RAW_PTR_H_
diff --git a/tools/clang/plugins/tests/base/allocator/partition_allocator/pointers/raw_ptr_cast.h b/tools/clang/plugins/tests/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_cast.h
similarity index 84%
rename from tools/clang/plugins/tests/base/allocator/partition_allocator/pointers/raw_ptr_cast.h
rename to tools/clang/plugins/tests/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_cast.h
index 916e366..82f9492a 100644
--- a/tools/clang/plugins/tests/base/allocator/partition_allocator/pointers/raw_ptr_cast.h
+++ b/tools/clang/plugins/tests/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_cast.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_POINTERS_RAW_PTR_CAST_H_
-#define TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_POINTERS_RAW_PTR_CAST_H_
+#ifndef TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_POINTERS_RAW_PTR_CAST_H_
+#define TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_POINTERS_RAW_PTR_CAST_H_
 
 namespace base {
 
@@ -24,4 +24,4 @@
 
 }  // namespace base
 
-#endif  // TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_POINTERS_RAW_PTR_CAST_H_
+#endif  // TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_POINTERS_RAW_PTR_CAST_H_
diff --git a/tools/clang/plugins/tests/base/allocator/partition_allocator/pointers/raw_ptr_exclusion.h b/tools/clang/plugins/tests/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_exclusion.h
similarity index 75%
rename from tools/clang/plugins/tests/base/allocator/partition_allocator/pointers/raw_ptr_exclusion.h
rename to tools/clang/plugins/tests/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_exclusion.h
index 8d8b1c5..1ca8c96 100644
--- a/tools/clang/plugins/tests/base/allocator/partition_allocator/pointers/raw_ptr_exclusion.h
+++ b/tools/clang/plugins/tests/base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_exclusion.h
@@ -2,11 +2,11 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_POINTERS_RAW_PTR_EXCLUSION_H_
-#define TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_POINTERS_RAW_PTR_EXCLUSION_H_
+#ifndef TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_POINTERS_RAW_PTR_EXCLUSION_H_
+#define TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_POINTERS_RAW_PTR_EXCLUSION_H_
 
 // Marks a field as excluded from the raw_ptr usage enforcement clang plugin.
 // Example: RAW_PTR_EXCLUSION Foo* foo_;
 #define RAW_PTR_EXCLUSION __attribute__((annotate("raw_ptr_exclusion")))
 
-#endif  // TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_POINTERS_RAW_PTR_EXCLUSION_H_
+#endif  // TOOLS_CLANG_PLUGINS_TESTS_BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_POINTERS_RAW_PTR_EXCLUSION_H_
diff --git a/tools/clang/plugins/tests/base/memory/raw_ptr.h b/tools/clang/plugins/tests/base/memory/raw_ptr.h
index 443c3ae..02da8e3e 100644
--- a/tools/clang/plugins/tests/base/memory/raw_ptr.h
+++ b/tools/clang/plugins/tests/base/memory/raw_ptr.h
@@ -8,6 +8,6 @@
 // Although `raw_ptr` is part of the standalone PA distribution, it is
 // easier to use the shorter path in `//base/memory`. We retain this
 // facade header for ease of typing.
-#include "base/allocator/partition_allocator/pointers/raw_ptr.h"  // IWYU pragma: export
+#include "base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr.h"  // IWYU pragma: export
 
 #endif  // TOOLS_CLANG_PLUGINS_TESTS_BASE_MEMORY_RAW_PTR_H_
diff --git a/tools/clang/plugins/tests/base/memory/raw_ptr_cast.h b/tools/clang/plugins/tests/base/memory/raw_ptr_cast.h
index e4f16ca..d1b2d871 100644
--- a/tools/clang/plugins/tests/base/memory/raw_ptr_cast.h
+++ b/tools/clang/plugins/tests/base/memory/raw_ptr_cast.h
@@ -8,6 +8,6 @@
 // Although `raw_ptr` is part of the standalone PA distribution, it is
 // easier to use the shorter path in `//base/memory`. We retain this
 // facade header for ease of typing.
-#include "base/allocator/partition_allocator/pointers/raw_ptr_cast.h"  // IWYU pragma: export
+#include "base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_cast.h"  // IWYU pragma: export
 
 #endif  // TOOLS_CLANG_PLUGINS_TESTS_BASE_MEMORY_RAW_PTR_CAST_H_
diff --git a/tools/clang/plugins/tests/base/memory/raw_ptr_exclusion.h b/tools/clang/plugins/tests/base/memory/raw_ptr_exclusion.h
index cb0cefbd..da02497 100644
--- a/tools/clang/plugins/tests/base/memory/raw_ptr_exclusion.h
+++ b/tools/clang/plugins/tests/base/memory/raw_ptr_exclusion.h
@@ -8,6 +8,6 @@
 // Although `raw_ptr` is part of the standalone PA distribution, it is
 // easier to use the shorter path in `//base/memory`. We retain this
 // facade header for ease of typing.
-#include "base/allocator/partition_allocator/pointers/raw_ptr_exclusion.h"  // IWYU pragma: export
+#include "base/allocator/partition_allocator/src/partition_alloc/pointers/raw_ptr_exclusion.h"  // IWYU pragma: export
 
 #endif  // TOOLS_CLANG_PLUGINS_TESTS_BASE_MEMORY_RAW_PTR_EXCLUSION_H_
diff --git a/tools/clang/scripts/update.py b/tools/clang/scripts/update.py
index 20c4147..64f3f44 100755
--- a/tools/clang/scripts/update.py
+++ b/tools/clang/scripts/update.py
@@ -35,7 +35,7 @@
 # https://chromium.googlesource.com/chromium/src/+/main/docs/updating_clang.md
 # Reverting problematic clang rolls is safe, though.
 # This is the output of `git describe` and is usable as a commit-ish.
-CLANG_REVISION = 'llvmorg-18-init-4631-gd50b56d1'
+CLANG_REVISION = 'llvmorg-18-init-7313-geee1f7ce'
 CLANG_SUB_REVISION = 1
 
 PACKAGE_VERSION = '%s-%s' % (CLANG_REVISION, CLANG_SUB_REVISION)
diff --git a/tools/crates/gnrt/lib/config.rs b/tools/crates/gnrt/lib/config.rs
index 43abd64..d0b8c7a1b 100644
--- a/tools/crates/gnrt/lib/config.rs
+++ b/tools/crates/gnrt/lib/config.rs
@@ -60,10 +60,12 @@
     /// other generated targets.
     pub exclude_deps_in_gn: Vec<String>,
     /// Include rs and input files under these relative paths as part of the
-    /// crate.
+    /// crate. The roots may each be a single file or a directory.
     #[serde(default)]
     pub extra_src_roots: Vec<std::path::PathBuf>,
     /// Include input files under these relative paths as part of the crate.
+    ///
+    /// The roots may each be a single file or a directory.
     #[serde(default)]
     pub extra_input_roots: Vec<std::path::PathBuf>,
     #[serde(default)]
diff --git a/tools/crates/gnrt/lib/crates.rs b/tools/crates/gnrt/lib/crates.rs
index 8784dbd..c2ada63 100644
--- a/tools/crates/gnrt/lib/crates.rs
+++ b/tools/crates/gnrt/lib/crates.rs
@@ -525,27 +525,27 @@
 
 // Adds a `filepath` to `CrateFiles` depending on the type of file and the
 // `mode` of collection.
-fn collect_crate_file(files: &mut CrateFiles, mode: CollectCrateFiles, filepath: PathBuf) {
+fn collect_crate_file(files: &mut CrateFiles, mode: CollectCrateFiles, filepath: &Path) {
     match filepath.extension().map(std::ffi::OsStr::to_str).flatten() {
         Some("rs") => match mode {
-            CollectCrateFiles::Internal => files.sources.push(filepath),
-            CollectCrateFiles::ExternalSourcesAndInputs => files.inputs.push(filepath),
+            CollectCrateFiles::Internal => files.sources.push(filepath.to_owned()),
+            CollectCrateFiles::ExternalSourcesAndInputs => files.inputs.push(filepath.to_owned()),
             CollectCrateFiles::ExternalInputsOnly => (),
         },
         // md: Markdown files are commonly include!()'d into source code as docs.
         // h: cxxbridge_cmd include!()'s its .h file into it.
-        Some("md") | Some("h") => files.inputs.push(filepath),
+        Some("md") | Some("h") => files.inputs.push(filepath.to_owned()),
         _ => (),
     };
 }
 
-// Recursively visits all files under `dir` and calls `f` on each one.
-fn recurse_crate_files(dir: &Path, f: &mut dyn FnMut(PathBuf)) -> io::Result<()> {
-    fn recurse(dir: &Path, root: &Path, f: &mut dyn FnMut(PathBuf)) -> io::Result<()> {
-        'each_dir_entry: for r in std::fs::read_dir(dir)? {
-            let entry = r?;
-            let path = entry.path();
-            let is_dir = entry.metadata()?.is_dir();
+// Recursively visits all files under `path` and calls `f` on each one.
+//
+// The `path` may be a single file or a directory.
+fn recurse_crate_files(path: &Path, f: &mut dyn FnMut(&Path)) -> io::Result<()> {
+    fn recurse(path: &Path, root: &Path, f: &mut dyn FnMut(&Path)) -> io::Result<()> {
+        let meta = std::fs::metadata(path)?;
+        if !meta.is_dir() {
             // Working locally can produce files in tree that should not be considered, and
             // which are not part of the git repository.
             //
@@ -559,14 +559,20 @@
             const SKIP_PREFIXES: [&str; 3] = [".devcontainer", ".vscode", "target"];
             for skip in SKIP_PREFIXES {
                 if path.starts_with(root.join(Path::new(skip))) {
-                    continue 'each_dir_entry;
+                    return Ok(());
                 }
             }
-            if is_dir { recurse(&path, root, f)? } else { f(path) }
+            f(path)
+        } else {
+            for r in std::fs::read_dir(path)? {
+                let entry = r?;
+                let path = entry.path();
+                recurse(&path, root, f)?;
+            }
         }
         Ok(())
     }
-    recurse(dir, dir, f)
+    recurse(path, path, f)
 }
 
 /// Get a crate's ID and parsed manifest from its path. Returns `Ok(None)` if
diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ids.spec
index 9932203..fdde0878 100644
--- a/tools/gritsettings/resource_ids.spec
+++ b/tools/gritsettings/resource_ids.spec
@@ -521,7 +521,7 @@
     "includes": [4280],
   },
   "<(SHARED_INTERMEDIATE_DIR)/chrome/browser/resources/about_sys/resources.grd": {
-    "META": {"sizes": {"includes": [5]}},
+    "META": {"sizes": {"includes": [10]}},
     "includes": [4290],
   },
   "<(SHARED_INTERMEDIATE_DIR)/chrome/browser/resources/app_home/resources.grd": {
diff --git a/tools/mb/mb.py b/tools/mb/mb.py
index 6e8f0a5..ae913c3 100755
--- a/tools/mb/mb.py
+++ b/tools/mb/mb.py
@@ -1005,6 +1005,8 @@
       locations_file_abs_path = os.path.join(
           os.path.dirname(self.args.config_file),
           os.path.normpath(gn_args_locations_file))
+      if not self.Exists(locations_file_abs_path):
+        continue
       gn_args_locations = json.loads(self.ReadFile(locations_file_abs_path))
       gn_args_file = gn_args_locations.get(self.args.builder_group,
                                            {}).get(self.args.builder, None)
@@ -2023,24 +2025,6 @@
                        input=input)
     return p.returncode, p.stdout, p.stderr
 
-  def _CipdPlatform(self):
-    """Returns current CIPD platform, e.g. linux-amd64.
-
-    Unless the platform is arm64, assumes amd64.
-    """
-    arch = 'amd64'
-    if platform.machine() == 'arm64':
-      arch = arm64
-    if self.platform == 'win32':
-      return 'windows-' + arch
-    if self.platform == 'darwin':
-      return 'mac-' + arch
-    return 'linux-' + arch
-
-  def ExpandUser(self, path):
-    # This function largely exists so it can be overridden for testing.
-    return os.path.expanduser(path)
-
   def Exists(self, path):
     # This function largely exists so it can be overridden for testing.
     return os.path.exists(path)
diff --git a/tools/mb/mb_config.pyl b/tools/mb/mb_config.pyl
index 9270585..89eee6df 100644
--- a/tools/mb/mb_config.pyl
+++ b/tools/mb/mb_config.pyl
@@ -284,7 +284,7 @@
       'ToTLinuxOfficial': 'clang_tot_official',
       'ToTLinuxPGO': 'clang_tot_official_pgo',
       'ToTLinuxTSan': 'clang_tot_tsan_release',
-      'ToTLinuxUBSanVptr': 'clang_tot_ubsan_no_recover_hack_static_release',
+      'ToTLinuxUBSanVptr': 'clang_tot_ubsan_vptr_no_recover_hack_static_release',
       'ToTMac': 'clang_tot_minimal_symbols_shared_release',
       'ToTMac (dbg)': 'clang_tot_shared_debug',
       'ToTMacASan': 'asan_disable_nacl_clang_tot_minimal_symbols_static_release',
@@ -688,7 +688,7 @@
       'linux-exp-asan-lsan-fyi-rel': 'asan_lsan_failsan_release_trybot_reclient',
       'linux-exp-msan-fyi-rel': 'msan_failsan_release_bot_reclient',
       'linux-exp-tsan-fyi-rel': 'tsan_disable_nacl_failsan_release_bot_reclient',
-      'linux-ubsan-fyi-rel': 'ubsan_release_bot_reclient',
+      'linux-ubsan-fyi-rel': 'ubsan_no_recover_release_bot_reclient',
       'mac-lsan-fyi-rel': 'asan_lsan_dcheck_disable_nacl_release_bot_reclient',
     },
 
@@ -918,7 +918,6 @@
     'internal.chrome.fyi': {
       'android-buildspeed-dbg': 'android_debug_bot_reclient_fastbuild',
       'android-emulator-finch-smoke-chrome': 'android_release_bot_minimal_symbols_x86_fastbuild_webview_trichrome_reclient',
-      'android-nougat-x86-finch-smoke-chrome': 'android_release_bot_minimal_symbols_x86_fastbuild_webview_official_no_resource_allowlisting_monochrome_reclient',
       'chromeos-arm-generic-cfi-thin-lto-chrome-reclient': 'chromeos_arm-generic_cfi_thin_lto_official_reclient',
       'lacros-arm-generic-chrome-fyi-reclient': 'chromeos_arm-generic_lacros_official_skylab_reclient',
       'linux-finch-smoke-chrome': 'official_reclient',
@@ -1114,6 +1113,7 @@
       'android-webview-pie-arm64-dbg': 'android_release_trybot_arm64_webview_monochrome_reclient',
       'android-webview-pie-x86-wpt-fyi-rel': 'android_release_bot_minimal_symbols_x86_fastbuild_webview_monochrome_reclient',
       'android-x64-cast': 'android_cast_debug_static_bot_compile_only_reclient',
+      'android-x86-rel': 'android_release_trybot_x86_fastbuild_webview_monochrome_coverage_reclient',
       'android_arm64_dbg_recipe': 'android_debug_trybot_compile_only_arm64_fastbuild_reclient',
       'android_blink_rel': 'android_release_trybot_x64_reclient',
       'android_compile_dbg': 'android_debug_trybot_compile_only_arm64_reclient',
@@ -1180,10 +1180,8 @@
       'linux-chromeos-dbg': 'chromeos_with_codecs_debug_trybot_reclient',
       'linux-chromeos-inverse-fieldtrials-fyi-rel': 'chromeos_with_codecs_release_trybot_invert_fieldtrials_reclient',
       'linux-chromeos-rel': 'chromeos_with_codecs_release_trybot_code_coverage_reclient',
-      'linux-chromeos-siso-rel': 'chromeos_with_codecs_release_trybot_code_coverage_reclient',
       'linux-lacros-dbg': 'lacros_on_linux_debug_bot_reclient',
       'linux-lacros-rel': 'lacros_on_linux_release_trybot_reclient_code_coverage',
-      'linux-lacros-siso-rel': 'lacros_on_linux_release_trybot_reclient_code_coverage',
     },
 
     'tryserver.chromium.codesearch': {
@@ -1314,7 +1312,7 @@
       'linux-rel': 'gpu_tests_release_trybot_no_symbols_use_dummy_lastchange_code_coverage_do_typecheck_reclient',
       'linux-rel-warmed': 'gpu_tests_release_trybot_no_symbols_use_dummy_lastchange_code_coverage',
       'linux-siso-rel': 'gpu_tests_release_trybot_no_symbols_use_dummy_lastchange_code_coverage_do_typecheck_reclient',
-      'linux-ubsan-fyi-rel': 'ubsan_release_bot_reclient',
+      'linux-ubsan-fyi-rel': 'ubsan_no_recover_release_bot_reclient',
       # This is intentionally a release_bot and not a release_trybot to match
       # the CI configuration, where no debug builder exists.
       'linux-ubsan-vptr': 'ubsan_vptr_release_bot_reclient',
@@ -1880,12 +1878,6 @@
       'webview_shell', 'use_java_coverage'
     ],
 
-    'android_release_bot_minimal_symbols_x86_fastbuild_webview_official_no_resource_allowlisting_monochrome_reclient': [
-      'android', 'release_bot_reclient', 'minimal_symbols', 'x86',
-      'strip_debug_info', 'android_fastbuild', 'webview_monochrome',
-      'webview_shell', 'official', 'chrome_branded', 'no_resource_allowlisting'
-    ],
-
     'android_release_bot_minimal_symbols_x86_fastbuild_webview_trichrome_reclient': [
       'android', 'release_bot_reclient', 'minimal_symbols', 'x86',
       'strip_debug_info', 'android_fastbuild', 'webview_trichrome',
@@ -2620,8 +2612,8 @@
       'clang_tot', 'tsan', 'release',
     ],
 
-    'clang_tot_ubsan_no_recover_hack_static_release': [
-      'clang_tot', 'ubsan_no_recover_hack', 'static', 'release',
+    'clang_tot_ubsan_vptr_no_recover_hack_static_release': [
+      'clang_tot', 'ubsan_vptr_no_recover_hack', 'static', 'release',
     ],
 
     'clang_tot_win_official_full_symbols_static': [
@@ -2651,6 +2643,7 @@
     'codesearch_gen_chromium_cronet_bot_reclient': [
       # Set is_cronet_build to true in order to build cronet.
       'codesearch_reclient', 'android_without_codecs', 'static', 'is_cronet_build',
+      'cronet_android',
     ],
 
     'codesearch_gen_chromium_fuchsia_bot_reclient': [
@@ -3888,12 +3881,16 @@
       'tsan', 'disable_nacl', 'release_trybot_minimal_symbols_reclient',
     ],
 
+    'ubsan_no_recover_release_bot_reclient': [
+      'ubsan_no_recover', 'release_bot_reclient',
+    ],
+
     'ubsan_release_bot_reclient': [
       'ubsan', 'release_bot_reclient',
     ],
 
     'ubsan_vptr_release_bot_reclient': [
-      'ubsan_vptr', 'ubsan_no_recover_hack', 'release_bot_reclient',
+      'ubsan_vptr', 'ubsan_vptr_no_recover_hack', 'release_bot_reclient',
     ],
 
     'updater_debug_bot_arm64_reclient': [
@@ -4941,13 +4938,10 @@
       'gn_args': 'is_ubsan=true',
     },
 
-    'ubsan_no_recover_hack': {
-      # TODO(krasin): Remove when https://llvm.org/bugs/show_bug.cgi?id=25569
-      # is fixed and just use ubsan_vptr instead.
-      'mixins': ['ubsan_vptr'],
+    'ubsan_no_recover': {
+      'mixins': ['ubsan'],
       'gn_args': 'is_ubsan_no_recover=true',
     },
-
     'ubsan_security_non_vptr': {
       'gn_args': 'is_ubsan_security=true is_ubsan_vptr=false'
     },
@@ -4956,6 +4950,14 @@
       'gn_args': 'is_ubsan_vptr=true',
     },
 
+    'ubsan_vptr_no_recover_hack': {
+      # TODO(krasin): Remove when https://llvm.org/bugs/show_bug.cgi?id=25569
+      # is fixed and just use ubsan_vptr instead.
+      'mixins': ['ubsan_vptr'],
+      'gn_args': 'is_ubsan_no_recover=true',
+    },
+
+
     'updater': {
       'gn_args': 'enable_updater=true',
     },
diff --git a/tools/mb/mb_config_expectations/chromium.infra.codesearch.json b/tools/mb/mb_config_expectations/chromium.infra.codesearch.json
index db35d8b..c26e9ba9 100644
--- a/tools/mb/mb_config_expectations/chromium.infra.codesearch.json
+++ b/tools/mb/mb_config_expectations/chromium.infra.codesearch.json
@@ -30,15 +30,29 @@
     "gn_args": {
       "blink_enable_generated_code_formatting": true,
       "clang_use_chrome_plugins": false,
+      "clang_use_default_sample_profile": false,
       "debuggable_apks": false,
+      "default_min_sdk_version": 21,
+      "disable_file_support": true,
+      "enable_base_tracing": false,
       "enable_kythe_annotations": true,
+      "enable_reporting": true,
+      "enable_resource_allowlist_generation": false,
+      "enable_websockets": false,
+      "include_transport_security_state_preload_list": false,
       "is_clang": true,
       "is_component_build": false,
       "is_cronet_build": true,
       "is_debug": true,
+      "media_use_ffmpeg": false,
       "symbol_level": 1,
       "target_os": "android",
-      "use_remoteexec": true
+      "use_crash_key_stubs": true,
+      "use_hashed_jni_names": true,
+      "use_partition_alloc": false,
+      "use_platform_icu_alternatives": true,
+      "use_remoteexec": true,
+      "use_thin_lto": false
     }
   },
   "codesearch-gen-chromium-fuchsia": {
diff --git a/tools/mb/mb_config_expectations/chromium.memory.fyi.json b/tools/mb/mb_config_expectations/chromium.memory.fyi.json
index 0e7e016..badac82 100644
--- a/tools/mb/mb_config_expectations/chromium.memory.fyi.json
+++ b/tools/mb/mb_config_expectations/chromium.memory.fyi.json
@@ -40,6 +40,7 @@
       "is_component_build": false,
       "is_debug": false,
       "is_ubsan": true,
+      "is_ubsan_no_recover": true,
       "use_remoteexec": true
     }
   },
diff --git a/tools/mb/mb_config_expectations/internal.chrome.fyi.json b/tools/mb/mb_config_expectations/internal.chrome.fyi.json
index ba691b8b..32131b6 100644
--- a/tools/mb/mb_config_expectations/internal.chrome.fyi.json
+++ b/tools/mb/mb_config_expectations/internal.chrome.fyi.json
@@ -30,27 +30,6 @@
       "use_remoteexec": true
     }
   },
-  "android-nougat-x86-finch-smoke-chrome": {
-    "gn_args": {
-      "android_static_analysis": "off",
-      "dcheck_always_on": false,
-      "debuggable_apks": false,
-      "enable_resource_allowlist_generation": false,
-      "ffmpeg_branding": "Chrome",
-      "is_chrome_branded": true,
-      "is_component_build": false,
-      "is_debug": false,
-      "is_official_build": true,
-      "proprietary_codecs": true,
-      "strip_debug_info": true,
-      "symbol_level": 1,
-      "system_webview_package_name": "com.google.android.apps.chrome",
-      "system_webview_shell_package_name": "org.chromium.my_webview_shell",
-      "target_cpu": "x86",
-      "target_os": "android",
-      "use_remoteexec": true
-    }
-  },
   "chromeos-arm-generic-cfi-thin-lto-chrome-reclient": {
     "args_file": "//build/args/chromeos/arm-generic.gni",
     "gn_args": {
diff --git a/tools/mb/mb_config_expectations/tryserver.chromium.android.json b/tools/mb/mb_config_expectations/tryserver.chromium.android.json
index 7caba5a..f114ee9 100644
--- a/tools/mb/mb_config_expectations/tryserver.chromium.android.json
+++ b/tools/mb/mb_config_expectations/tryserver.chromium.android.json
@@ -1335,6 +1335,27 @@
       "use_remoteexec": true
     }
   },
+  "android-x86-rel": {
+    "gn_args": {
+      "android_static_analysis": "off",
+      "coverage_instrumentation_input_file": "//.code-coverage/files_to_instrument.txt",
+      "dcheck_always_on": true,
+      "debuggable_apks": false,
+      "ffmpeg_branding": "Chrome",
+      "is_component_build": false,
+      "is_debug": false,
+      "proprietary_codecs": true,
+      "strip_debug_info": true,
+      "symbol_level": 0,
+      "system_webview_package_name": "com.google.android.apps.chrome",
+      "system_webview_shell_package_name": "org.chromium.my_webview_shell",
+      "target_cpu": "x86",
+      "target_os": "android",
+      "use_dummy_lastchange": true,
+      "use_jacoco_coverage": true,
+      "use_remoteexec": true
+    }
+  },
   "android_arm64_dbg_recipe": {
     "gn_args": {
       "android_static_analysis": "off",
diff --git a/tools/mb/mb_config_expectations/tryserver.chromium.chromiumos.json b/tools/mb/mb_config_expectations/tryserver.chromium.chromiumos.json
index 5a70446..50d907ec 100644
--- a/tools/mb/mb_config_expectations/tryserver.chromium.chromiumos.json
+++ b/tools/mb/mb_config_expectations/tryserver.chromium.chromiumos.json
@@ -317,25 +317,6 @@
       "use_remoteexec": true
     }
   },
-  "linux-chromeos-siso-rel": {
-    "gn_args": {
-      "also_build_lacros_chrome": true,
-      "coverage_instrumentation_input_file": "//.code-coverage/files_to_instrument.txt",
-      "dcheck_always_on": true,
-      "enable_backup_ref_ptr_feature_flag": true,
-      "enable_dangling_raw_ptr_checks": true,
-      "enable_dangling_raw_ptr_feature_flag": true,
-      "ffmpeg_branding": "ChromeOS",
-      "is_component_build": false,
-      "is_debug": false,
-      "proprietary_codecs": true,
-      "symbol_level": 0,
-      "target_os": "chromeos",
-      "use_clang_coverage": true,
-      "use_dummy_lastchange": true,
-      "use_remoteexec": true
-    }
-  },
   "linux-lacros-dbg": {
     "gn_args": {
       "also_build_ash_chrome": true,
@@ -362,21 +343,5 @@
       "use_dummy_lastchange": true,
       "use_remoteexec": true
     }
-  },
-  "linux-lacros-siso-rel": {
-    "gn_args": {
-      "also_build_ash_chrome": true,
-      "chromeos_is_browser_only": true,
-      "coverage_instrumentation_input_file": "//.code-coverage/files_to_instrument.txt",
-      "dcheck_always_on": true,
-      "is_clang": true,
-      "is_component_build": false,
-      "is_debug": false,
-      "symbol_level": 0,
-      "target_os": "chromeos",
-      "use_clang_coverage": true,
-      "use_dummy_lastchange": true,
-      "use_remoteexec": true
-    }
   }
 }
\ No newline at end of file
diff --git a/tools/mb/mb_config_expectations/tryserver.chromium.linux.json b/tools/mb/mb_config_expectations/tryserver.chromium.linux.json
index 92ca302..ca2e754a 100644
--- a/tools/mb/mb_config_expectations/tryserver.chromium.linux.json
+++ b/tools/mb/mb_config_expectations/tryserver.chromium.linux.json
@@ -643,6 +643,7 @@
       "is_component_build": false,
       "is_debug": false,
       "is_ubsan": true,
+      "is_ubsan_no_recover": true,
       "use_remoteexec": true
     }
   },
diff --git a/tools/mb/mb_unittest.py b/tools/mb/mb_unittest.py
index 0da6c59c..e4d127d 100755
--- a/tools/mb/mb_unittest.py
+++ b/tools/mb/mb_unittest.py
@@ -10,7 +10,7 @@
 import os
 import re
 import sys
-import tempfile
+import textwrap
 import unittest
 
 sys.path.insert(
@@ -58,9 +58,6 @@
     self.err = ''
     self.rmdirs = []
 
-  def ExpandUser(self, path):
-    return '$HOME/%s' % path
-
   def Exists(self, path):
     abs_path = self._AbsPath(path)
     return (self.files.get(abs_path) is not None or abs_path in self.dirs)
@@ -348,6 +345,10 @@
 """
 
 
+def is_win():
+  return sys.platform == 'win32'
+
+
 class UnitTest(unittest.TestCase):
   maxDiff = None
 
@@ -393,6 +394,11 @@
       self.assertEqual(mbw.err, err)
     return mbw
 
+  def path(self, p):
+    if is_win():
+      return 'c:' + p.replace('/', '\\')
+    return p
+
   def test_analyze(self):
     files = {'/tmp/in.json': '''{\
                "files": ["foo/foo_unittest.cc"],
@@ -926,23 +932,17 @@
                     '/fake_src/buildtools/linux64/gn gen _path_\n'))
 
   def gen_starlark_gn_args_mbw(self, gn_args_json):
-    is_win = sys.platform == 'win32'
-    paths = [
-        '/fake_src/tools/mb/mb_config.pyl',
-        '/fake_src/tools/mb/../../infra/config/generated/builders/'
-        'gn_args_locations.json',
-        '/fake_src/tools/mb/../../infra/config/generated/builders/'
-        'ci/linux-official/gn-args.json',
-    ]
     files = {
-        'c:' + paths[0].replace('/', '\\') if is_win else paths[0]:
+        self.path('/fake_src/tools/mb/mb_config.pyl'):
         CONFIG_STARLARK_GN_ARGS,
-        'c:' + paths[1].replace('/', '\\') if is_win else paths[1]:
+        self.path('/fake_src/tools/mb/../../infra/config/generated/builders/'
+                  'gn_args_locations.json'):
         TEST_GN_ARGS_LOCATIONS_JSON,
-        'c:' + paths[2].replace('/', '\\') if is_win else paths[2]:
+        self.path('/fake_src/tools/mb/../../infra/config/generated/builders/'
+                  'ci/linux-official/gn-args.json'):
         gn_args_json,
     }
-    return self.fake_mbw(files=files, win32=is_win)
+    return self.fake_mbw(files=files, win32=is_win())
 
   def test_lookup_starlark_gn_args(self):
     mbw = self.gen_starlark_gn_args_mbw(TEST_GN_ARGS_JSON)
@@ -1009,6 +1009,31 @@
         'MBErr: Phase phase_3 doesn\'t exist for linux-official on chromium',
         mbw.out)
 
+  def test_lookup_gn_args_with_non_existent_gn_args_location_file(self):
+    files = {
+        self.path('/fake_src/tools/mb/mb_config.pyl'):
+        textwrap.dedent("""\
+            {
+              'gn_args_locations_files': [
+                '../../infra/config/generated/builders/gn_args_locations.json',
+              ],
+              'builder_groups': {
+                'fake-group': {
+                  'fake-builder': 'fake-config',
+                },
+              },
+              'configs': {
+                'fake-config': [],
+              },
+              'mixins': {},
+            }
+        """)
+    }
+    mbw = self.fake_mbw(files=files, win32=is_win())
+    self.check(['lookup', '-m', 'fake-group', '-b', 'fake-builder'],
+               mbw=mbw,
+               ret=0)
+
   def test_quiet_lookup(self):
     self.check(['lookup', '-c', 'debug_goma', '--quiet'], ret=0,
                out=('is_debug = true\n'
diff --git a/tools/memory/partition_allocator/BUILD.gn b/tools/memory/partition_allocator/BUILD.gn
index 2fd3d959..e353cf0 100644
--- a/tools/memory/partition_allocator/BUILD.gn
+++ b/tools/memory/partition_allocator/BUILD.gn
@@ -2,7 +2,8 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-import("//base/allocator/partition_allocator/partition_alloc.gni")
+import(
+    "//base/allocator/partition_allocator/src/partition_alloc/partition_alloc.gni")
 
 # Only support x86_64 Linux as the system calls used are Linux-specific. No
 # point in building this if PartitionAlloc is not the allocator used.
diff --git a/tools/memory/partition_allocator/OWNERS b/tools/memory/partition_allocator/OWNERS
index 7443c932..5a8ada3e 100644
--- a/tools/memory/partition_allocator/OWNERS
+++ b/tools/memory/partition_allocator/OWNERS
@@ -1 +1 @@
-file://base/allocator/partition_allocator/OWNERS
+file://base/allocator/partition_allocator/src/partition_alloc/OWNERS
diff --git a/tools/memory/partition_allocator/compute_internal_fragmentation.py b/tools/memory/partition_allocator/compute_internal_fragmentation.py
index fa46aa2..daeb14f 100755
--- a/tools/memory/partition_allocator/compute_internal_fragmentation.py
+++ b/tools/memory/partition_allocator/compute_internal_fragmentation.py
@@ -102,7 +102,7 @@
     slot_size = trace_utils.GetAllocatorAttr(attrs, 'slot_size')
     if allocated_objects_size != 0:
       # See: |CanStoreRawSize| in
-      # base/allocator/partition_allocator/partition_bucket.h
+      # base/allocator/partition_allocator/src/partition_alloc/partition_bucket.h
       # The single slot span size below assumes we have 4 KiB pages.
       if slot_size >= 0xE0000:  # Direct Mapped, so not affected by bucket size
         rounded_allocated_objects_size = allocated_objects_size
diff --git a/tools/memory/partition_allocator/inspect_utils.cc b/tools/memory/partition_allocator/inspect_utils.cc
index 0c66eca..f702157e 100644
--- a/tools/memory/partition_allocator/inspect_utils.cc
+++ b/tools/memory/partition_allocator/inspect_utils.cc
@@ -6,7 +6,7 @@
 
 #include <sys/mman.h>
 
-#include "base/allocator/partition_allocator/thread_cache.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/thread_cache.h"
 #include "base/check_op.h"
 #include "base/debug/proc_maps_linux.h"
 #include "base/logging.h"
diff --git a/tools/memory/partition_allocator/inspect_utils_linux.cc b/tools/memory/partition_allocator/inspect_utils_linux.cc
index 28c132c3..10cf408 100644
--- a/tools/memory/partition_allocator/inspect_utils_linux.cc
+++ b/tools/memory/partition_allocator/inspect_utils_linux.cc
@@ -6,7 +6,7 @@
 
 #include <sys/mman.h>
 
-#include "base/allocator/partition_allocator/thread_cache.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/thread_cache.h"
 #include "base/check_op.h"
 #include "base/debug/proc_maps_linux.h"
 #include "base/logging.h"
diff --git a/tools/memory/partition_allocator/inspect_utils_mac.cc b/tools/memory/partition_allocator/inspect_utils_mac.cc
index a3b8ed2..3dbb0ea8 100644
--- a/tools/memory/partition_allocator/inspect_utils_mac.cc
+++ b/tools/memory/partition_allocator/inspect_utils_mac.cc
@@ -9,7 +9,7 @@
 #include <mach/mach_vm.h>
 #include <sys/mman.h>
 
-#include "base/allocator/partition_allocator/thread_cache.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/thread_cache.h"
 #include "base/check_op.h"
 #include "base/debug/proc_maps_linux.h"
 #include "base/logging.h"
diff --git a/tools/memory/partition_allocator/pa_buckets_inspect.cc b/tools/memory/partition_allocator/pa_buckets_inspect.cc
index f5036bf..b294bf8 100644
--- a/tools/memory/partition_allocator/pa_buckets_inspect.cc
+++ b/tools/memory/partition_allocator/pa_buckets_inspect.cc
@@ -17,8 +17,8 @@
 #include <unordered_map>
 #include <vector>
 
-#include "base/allocator/partition_allocator/partition_root.h"
-#include "base/allocator/partition_allocator/thread_cache.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/partition_root.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/thread_cache.h"
 #include "base/check_op.h"
 #include "base/debug/proc_maps_linux.h"
 #include "base/files/file.h"
diff --git a/tools/memory/partition_allocator/pa_dump_heap.cc b/tools/memory/partition_allocator/pa_dump_heap.cc
index 4875883..f93b4c3 100644
--- a/tools/memory/partition_allocator/pa_dump_heap.cc
+++ b/tools/memory/partition_allocator/pa_dump_heap.cc
@@ -12,11 +12,11 @@
 #include <cstring>
 #include <string>
 
-#include "base/allocator/partition_allocator/partition_alloc_buildflags.h"
-#include "base/allocator/partition_allocator/partition_alloc_config.h"
-#include "base/allocator/partition_allocator/partition_ref_count.h"
-#include "base/allocator/partition_allocator/partition_root.h"
-#include "base/allocator/partition_allocator/thread_cache.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/partition_alloc_buildflags.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/partition_ref_count.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/partition_root.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/thread_cache.h"
 #include "base/bits.h"
 #include "base/check.h"
 #include "base/command_line.h"
diff --git a/tools/memory/partition_allocator/pa_tcache_inspect.cc b/tools/memory/partition_allocator/pa_tcache_inspect.cc
index 0958d0f..68f36a6 100644
--- a/tools/memory/partition_allocator/pa_tcache_inspect.cc
+++ b/tools/memory/partition_allocator/pa_tcache_inspect.cc
@@ -19,9 +19,9 @@
 #include <string>
 #include <vector>
 
-#include "base/allocator/partition_allocator/partition_root.h"
-#include "base/allocator/partition_allocator/partition_stats.h"
-#include "base/allocator/partition_allocator/thread_cache.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/partition_root.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/partition_stats.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/thread_cache.h"
 #include "base/check_op.h"
 #include "base/command_line.h"
 #include "base/debug/proc_maps_linux.h"
diff --git a/tools/memory/partition_allocator/palloc_viewer/addrlookup.cpp b/tools/memory/partition_allocator/palloc_viewer/addrlookup.cpp
index ef4574a..1079053 100644
--- a/tools/memory/partition_allocator/palloc_viewer/addrlookup.cpp
+++ b/tools/memory/partition_allocator/palloc_viewer/addrlookup.cpp
@@ -236,7 +236,7 @@
   printf("pthread_block_offset=0x%lx\n", pthread_block_offset);
 
   Dwarf_Addr bias;
-  Dwarf_Die *cu = lookup_cu(NULL, "../../base/allocator/partition_allocator/thread_cache.cc", &bias);
+  Dwarf_Die *cu = lookup_cu(NULL, "../../base/allocator/partition_allocator/src/partition_alloc/thread_cache.cc", &bias);
 
   const char *nspath[] = { "base", "internal", NULL };
   unsigned long g_instance_addr = addrlookup_get_variable_address(cu, bias, nspath, 3, "g_instance");
diff --git a/tools/memory/partition_allocator/palloc_viewer/palloc-viewer-gui.cc b/tools/memory/partition_allocator/palloc_viewer/palloc-viewer-gui.cc
index b38636f..4639fe3 100644
--- a/tools/memory/partition_allocator/palloc_viewer/palloc-viewer-gui.cc
+++ b/tools/memory/partition_allocator/palloc_viewer/palloc-viewer-gui.cc
@@ -295,9 +295,11 @@
         pthread_cu, NULL, 0, "pthread", "stackblock_size");
 
     unsigned long thread_cache_bias;
-    void* thread_cache_cu = lookup_cu(
-        dwfl, NULL, "../../base/allocator/partition_allocator/thread_cache.cc",
-        &thread_cache_bias);
+    void* thread_cache_cu =
+        lookup_cu(dwfl, NULL,
+                  "../../base/allocator/partition_allocator/src/"
+                  "partition_alloc/thread_cache.cc",
+                  &thread_cache_bias);
     const char* nspath[] = {"base", "internal", NULL};
     out->thread_cache_registry_addr = addrlookup_get_variable_address(
         thread_cache_cu, thread_cache_bias, nspath, 3, "g_instance");
diff --git a/tools/memory/simulator/contiguous_memory_holder.cc b/tools/memory/simulator/contiguous_memory_holder.cc
index 846011a..63397308 100644
--- a/tools/memory/simulator/contiguous_memory_holder.cc
+++ b/tools/memory/simulator/contiguous_memory_holder.cc
@@ -6,7 +6,7 @@
 
 #include <cstdint>
 
-#include "base/allocator/partition_allocator/page_allocator.h"
+#include "base/allocator/partition_allocator/src/partition_alloc/page_allocator.h"
 #include "base/check_op.h"
 #include "base/debug/alias.h"
 #include "base/memory/page_size.h"
diff --git a/tools/metrics/actions/actions.xml b/tools/metrics/actions/actions.xml
index f7ba4a2..b5b14d9 100644
--- a/tools/metrics/actions/actions.xml
+++ b/tools/metrics/actions/actions.xml
@@ -12380,6 +12380,16 @@
   </description>
 </action>
 
+<action name="IOS.DefaultBrowserVideoPromo.Fullscreen.RemindMeLater">
+  <owner>cheickcisse@google.com</owner>
+  <owner>sebsg@chromium.org</owner>
+  <owner>bling-get-set-up@google.com</owner>
+  <description>
+    The user asked to be reminded later on the full screen default browser video
+    promo. iOS only.
+  </description>
+</action>
+
 <action name="IOS.DefaultBrowserVideoPromo.Halfscreen.Dismiss">
   <owner>cheickcisse@google.com</owner>
   <owner>sebsg@chromium.org</owner>
@@ -21435,9 +21445,28 @@
   <description>Please enter the description of this user action.</description>
 </action>
 
+<action name="MobilePageLoadedWithAccessory" not_user_triggered="true">
+  <owner>clank-large-form-factors@google.com</owner>
+  <description>
+    Reported when a web page is loaded with a connected hardware accessory
+    including one or more of keyboard, mouse, touchpad, trackball, and stylus
+    devices. Android only.
+  </description>
+</action>
+
 <action name="MobilePageLoadedWithKeyboard" not_user_triggered="true">
-  <owner>Please list the metric's owners. Add more owner tags as needed.</owner>
-  <description>Please enter the description of this user action.</description>
+  <owner>clank-large-form-factors@google.com</owner>
+  <description>
+    Reported when a web page is loaded with a connected hardware keyboard.
+    Android only.
+  </description>
+</action>
+
+<action name="MobilePageLoadedWithMouse" not_user_triggered="true">
+  <owner>clank-large-form-factors@google.com</owner>
+  <description>
+    Reported when a web page is loaded with a connected mouse. Android only.
+  </description>
 </action>
 
 <action name="MobilePasswordBreachOpenPasswordManager">
@@ -24204,6 +24233,15 @@
   </description>
 </action>
 
+<action name="NewTabPage.HistoryClusters.DiscountClicked">
+  <owner>yuezhanggg@chromium.org</owner>
+  <owner>chrome-shopping@google.com</owner>
+  <owner>chrome-desktop-ntp@google.com</owner>
+  <description>
+    User clicks on a tile with discount in the history cluster module.
+  </description>
+</action>
+
 <action name="NewTabPage.LinkOpenedFromContextMenu.WebUI">
   <owner>tiborg@chromium.org</owner>
   <owner>yyushkina@chromium.org</owner>
diff --git a/tools/metrics/histograms/enums.xml b/tools/metrics/histograms/enums.xml
index 3ea7318..053d160 100644
--- a/tools/metrics/histograms/enums.xml
+++ b/tools/metrics/histograms/enums.xml
@@ -12009,6 +12009,11 @@
   <int value="1" label="Deleted"/>
 </enum>
 
+<enum name="BooleanAutofillExtendedMenuEditAddress">
+  <int value="0" label="Canceled"/>
+  <int value="1" label="Saved"/>
+</enum>
+
 <enum name="BooleanAutofillFillAfterInteraction">
   <int value="0" label="Not filled"/>
   <int value="1" label="Filled"/>
@@ -19188,6 +19193,7 @@
   <int value="106" label="Auto Picture-in-Picture"/>
   <int value="107" label="3PCD Metadata Grants"/>
   <int value="108" label="File System Access extended permission"/>
+  <int value="109" label="3PCD Heuristics Grants"/>
 </enum>
 
 <enum name="ContentTypeParseableResult">
@@ -31222,9 +31228,9 @@
 <enum name="EasyUnlockAuthEvent">
   <int value="0" label="Smart Lock success"/>
   <int value="1" label="Smart Lock failure"/>
-  <int value="2" label="Password entry: No pairing"/>
-  <int value="3" label="Password entry: Pairing changed"/>
-  <int value="4" label="Password entry: User hardlock"/>
+  <int value="2" label="(Deprecated) Password entry: No pairing"/>
+  <int value="3" label="(Deprecated) Password entry: Pairing changed"/>
+  <int value="4" label="(Deprecated) Password entry: User hardlock"/>
   <int value="5" label="Password entry: Service not active"/>
   <int value="6" label="Password entry: No Bluetooth"/>
   <int value="7" label="Password entry: Bluetooth connecting"/>
@@ -31235,13 +31241,14 @@
   <int value="12" label="Password entry: RSSI too low"/>
   <int value="13" label="(Deprecated) Password entry: Phone not supported"/>
   <int value="14" label="Password entry: Phone authenticated"/>
-  <int value="15" label="Password entry: Tx power too high"/>
-  <int value="16" label="Password entry: Easy sign-in failed"/>
-  <int value="17" label="Password entry: Pairing added"/>
-  <int value="18" label="Password entry: No screenlock state handler"/>
+  <int value="15" label="(Deprecated) Password entry: Tx power too high"/>
+  <int value="16" label="(Deprecated) Password entry: Easy sign-in failed"/>
+  <int value="17" label="(Deprecated) Password entry: Pairing added"/>
+  <int value="18" label="Password entry: No Smart Lock state handler"/>
   <int value="19" label="Password entry: Phone locked and tx power too high"/>
-  <int value="20" label="Password entry: Forced re-auth"/>
-  <int value="21" label="Password entry: Sign-in with Smart Lock disabled"/>
+  <int value="20" label="(Deprecated) Password entry: Forced re-auth"/>
+  <int value="21"
+      label="(Deprecated) Password entry: Sign-in with Smart Lock disabled"/>
   <int value="22" label="Password entry: Primary user absent"/>
 </enum>
 
@@ -37509,7 +37516,7 @@
   <int value="1636" label="AUTOTESTPRIVATE_LOADSMARTDIMCOMPONENT"/>
   <int value="1637" label="TERMINALPRIVATE_GETPREFS"/>
   <int value="1638" label="TERMINALPRIVATE_SETPREFS"/>
-  <int value="1639" label="AUTOTESTPRIVATE_GETCRYPTOHOMERECOVERYDATA"/>
+  <int value="1639" label="DELETED_AUTOTESTPRIVATE_GETCRYPTOHOMERECOVERYDATA"/>
   <int value="1640" label="TERMINALPRIVATE_OPENSETTINGSSUBPAGE"/>
   <int value="1641" label="AUTOTESTPRIVATE_GETLACROSINFO"/>
   <int value="1642" label="LOGIN_LAUNCHSAMLUSERSESSION"/>
@@ -37713,6 +37720,7 @@
   <int value="1830"
       label="ACCESSIBILITY_PRIVATE_CLIPBOARDCOPYINACTIVELACROSGOOGLEDOC"/>
   <int value="1831" label="USERSCRIPTS_UPDATE"/>
+  <int value="1832" label="INPUTMETHODPRIVATE_GETLANGUAGEPACKSTATUS"/>
 </enum>
 
 <enum name="ExtensionIconState">
@@ -44113,6 +44121,8 @@
   <int value="4672" label="ObservableConstructor"/>
   <int value="4673" label="TextWrapBalance"/>
   <int value="4674" label="TextWrapPretty"/>
+  <int value="4675" label="V8PointerEvent_DeviceId_AttributeGetter"/>
+  <int value="4676" label="SourceMappingUrlMagicCommentAtSign"/>
 </enum>
 
 <enum name="FeaturePolicyAllowlistType">
@@ -44591,6 +44601,7 @@
   <int value="33" label="Price Insights"/>
   <int value="34" label="Cookie Controls"/>
   <int value="35" label="Game Dashboard"/>
+  <int value="36" label="OOBE or Login screen"/>
 </enum>
 
 <enum name="FeedContentOrder">
@@ -49525,6 +49536,24 @@
   <int value="32770" label="PDF"/>
 </enum>
 
+<enum name="GeneratedIconFixResult">
+  <int value="0" label="kAppUninstalled"/>
+  <int value="1" label="kShutdown"/>
+  <int value="2" label="kDownloadFailure"/>
+  <int value="3" label="kStillGenerated"/>
+  <int value="4" label="kWriteFailure"/>
+  <int value="5" label="kSuccess"/>
+</enum>
+
+<enum name="GeneratedIconFixScheduleDecision">
+  <int value="0" label="kNotSynced"/>
+  <int value="1" label="kTimeWindowExpired"/>
+  <int value="2" label="kNotRequired"/>
+  <int value="3" label="kAttemptLimitReached"/>
+  <int value="4" label="kAlreadyScheduled"/>
+  <int value="5" label="kSchedule"/>
+</enum>
+
 <enum name="GeneratedPasswordAlteredLengthIncreased">
   <int value="0" label="Length decreased"/>
   <int value="1" label="Length increased"/>
@@ -54457,6 +54486,7 @@
   <int value="116"
       label="BIDDING_AND_AUCTION_USER_CONSENTED_DEBUGGING_DELEGATE"/>
   <int value="117" label="PARCEL_TRACKING_INFOBAR_DELEGATE"/>
+  <int value="118" label="TEST_THIRD_PARTY_COOKIE_PHASEOUT_DELEGATE"/>
 </enum>
 
 <enum name="InfoBarResponse">
@@ -58607,11 +58637,14 @@
   <int value="-1667118147" label="bg"/>
   <int value="-1660178764" label="bn"/>
   <int value="-1391374456" label="ur"/>
+  <int value="-1340196252" label="en-gb"/>
   <int value="-1339452358" label="hu"/>
   <int value="-1319436779" label="lt"/>
+  <int value="-1142714117" label="nb"/>
   <int value="-1060081087" label="te"/>
   <int value="-1001508648" label="nl"/>
   <int value="-854196551" label="ko"/>
+  <int value="-795149789" label="en-au"/>
   <int value="-763755563" label="ru"/>
   <int value="-703387832" label="ml"/>
   <int value="-651240163" label="am"/>
@@ -58619,6 +58652,7 @@
   <int value="-554160101" label="es"/>
   <int value="-468417265" label="ca"/>
   <int value="-414170858" label="ne"/>
+  <int value="-344966328" label="en-us"/>
   <int value="-232429543" label="fi"/>
   <int value="-155273274" label="ka"/>
   <int value="-132861449" label="or"/>
@@ -58631,16 +58665,19 @@
   <int value="76742708" label="mn"/>
   <int value="126997093" label="sk"/>
   <int value="202713180" label="ms"/>
+  <int value="218790103" label="es-us"/>
   <int value="385084822" label="pt"/>
   <int value="411897228" label="fr"/>
   <int value="579959091" label="iw"/>
   <int value="592207805" label="pl"/>
   <int value="656523220" label="zh"/>
+  <int value="771718923" label="yue"/>
   <int value="771844654" label="uk"/>
   <int value="916296240" label="id"/>
   <int value="934072607" label="ta"/>
   <int value="942489058" label="gu"/>
   <int value="943542304" label="sl"/>
+  <int value="1005034866" label="es-es"/>
   <int value="1136549914" label="it"/>
   <int value="1176966558" label="de"/>
   <int value="1229318713" label="vi"/>
@@ -59010,7 +59047,7 @@
   <int value="0" label="kNone">Unknown</int>
   <int value="1" label="kOther">Catch-all launch for Windows</int>
   <int value="2" label="kUserExperiment">
-    Launched after acceptance of a user experiment
+    Launched after acceptance of a user experiment (deprecated)
   </int>
   <int value="3" label="kOtherOS">
     Result bucket for OSes with no specific launch modes
@@ -59174,6 +59211,13 @@
   <int value="10" label="No text"/>
 </enum>
 
+<enum name="LcppHintStatus">
+  <int value="0" label="kSucceedToSet"/>
+  <int value="1" label="kNoLcppData"/>
+  <int value="2" label="kInvalidLcppStat"/>
+  <int value="3" label="kConversionFailure"/>
+</enum>
+
 <enum name="LegacySupervisedUserStatus">
   <int value="0" label="Displayed on login screen"/>
   <int value="1" label="Hidden on login screen"/>
@@ -60634,6 +60678,7 @@
   <int value="-2141575276" label="FileHandlingIcons:enabled"/>
   <int value="-2141247271" label="AndroidOmniboxPreviewsBadge:enabled"/>
   <int value="-2141179322" label="ChromeOSSyncedSessionSharing:disabled"/>
+  <int value="-2140371146" label="DrawCutoutEdgeToEdge:disabled"/>
   <int value="-2140007754" label="HomepageSettingsUIConversion:disabled"/>
   <int value="-2139889252" label="AllowCrossDeviceFeatureSuite:disabled"/>
   <int value="-2139379065" label="StoragePressureUI:enabled"/>
@@ -61114,6 +61159,7 @@
   <int value="-1936032607" label="enable-experimental-webassembly-features"/>
   <int value="-1935787681" label="SystemNotifications:disabled"/>
   <int value="-1935597303" label="OptimizeEarlyNavigation:enabled"/>
+  <int value="-1935466197" label="PipTuck:enabled"/>
   <int value="-1935055754" label="WebShare:enabled"/>
   <int value="-1934661084" label="ForceUnifiedConsentBump:disabled"/>
   <int value="-1933425042" label="OfflinePreviews:enabled"/>
@@ -62730,6 +62776,7 @@
   <int value="-1151615978" label="BorealisBigGl:disabled"/>
   <int value="-1151476162" label="LacrosMergeIcuDataFile:disabled"/>
   <int value="-1151014496" label="NearbySharingDeviceContacts:disabled"/>
+  <int value="-1150980351" label="CrosWebAppInstallDialog:enabled"/>
   <int value="-1150485573" label="HistoryClustersPersistedClusters:enabled"/>
   <int value="-1146814438" label="TabbedAppOverflowMenuIcons:enabled"/>
   <int value="-1146521164" label="EcheNetworkConnectionState:disabled"/>
@@ -63314,6 +63361,7 @@
   <int value="-859193162" label="KeepSecondaryZeroSuggest:disabled"/>
   <int value="-858280894" label="DelayCompetingLowPriorityRequests:disabled"/>
   <int value="-857507314" label="ArcExternalStorageAccess:disabled"/>
+  <int value="-856919680" label="RemotePlaybackBackend:disabled"/>
   <int value="-856915246" label="enable-new-audio-rendering-mixing-strategy"/>
   <int value="-856407187" label="OnDeviceGrammarCheck:disabled"/>
   <int value="-856146376"
@@ -64191,6 +64239,8 @@
   <int value="-419733676" label="IsolatePrerendersMustProbeOrigin:disabled"/>
   <int value="-419659180" label="ContextualSearchDelayedIntelligence:disabled"/>
   <int value="-418868128" label="enable-experimental-web-platform-features"/>
+  <int value="-418717972"
+      label="ClipboardWellFormedHtmlSanitizationWrite:enabled"/>
   <int value="-418676305" label="ScanningUI:enabled"/>
   <int value="-417633330" label="MessagesForAndroidInfrastructure:enabled"/>
   <int value="-416660617" label="EnforceTLS13Downgrade:disabled"/>
@@ -64891,6 +64941,7 @@
   <int value="-74964571" label="EcheCustomWidget:enabled"/>
   <int value="-73282711" label="EnableAppListSearchAutocomplete:enabled"/>
   <int value="-72904030" label="ChromeRefresh2023:enabled"/>
+  <int value="-72590181" label="DrawCutoutEdgeToEdge:enabled"/>
   <int value="-72581685" label="FilesDriveShortcuts:disabled"/>
   <int value="-72455054" label="WebVrAutopresent:disabled"/>
   <int value="-70595606" label="ash-enable-unified-desktop"/>
@@ -65474,6 +65525,7 @@
   <int value="218890378" label="ManualSaving:disabled"/>
   <int value="219117936" label="AllowReaderForAccessibility:enabled"/>
   <int value="219384037" label="ESimPolicy:disabled"/>
+  <int value="220182175" label="PipTuck:disabled"/>
   <int value="220654375" label="SearchResultInlineIcon:disabled"/>
   <int value="221212638" label="StartSurfaceAndroid:enabled"/>
   <int value="221363150" label="ForceEnableFaceAe:disabled"/>
@@ -65992,6 +66044,7 @@
   <int value="462453078" label="cast-streaming-force-enable-hardware-h264"/>
   <int value="463582989" label="CompositorThreadedScrollbarScrolling:disabled"/>
   <int value="464226051" label="CrOSComponent:enabled"/>
+  <int value="464425854" label="UnoDesktop:disabled"/>
   <int value="464773709" label="OmniboxExperimentalSuggestScoring:enabled"/>
   <int value="464979219" label="CrOSLateBootAudioHFPOffload:disabled"/>
   <int value="465600939" label="DefaultPassthroughCommandDecoder:enabled"/>
@@ -66825,6 +66878,7 @@
   <int value="880510010" label="enable-permissions-bubbles"/>
   <int value="880552542" label="ImeUsEnglishModelUpdate:enabled"/>
   <int value="880638328" label="DriveFsShowCSEFiles:enabled"/>
+  <int value="881920916" label="CrosWebAppInstallDialog:disabled"/>
   <int value="882103442" label="FloatWindow:disabled"/>
   <int value="882893584" label="UseOfHashAffiliationFetcher:disabled"/>
   <int value="883190338" label="PrintWithReducedRasterization:disabled"/>
@@ -67369,6 +67423,8 @@
   <int value="1158333871" label="QueryTilesEnableQueryEditing:enabled"/>
   <int value="1159760152"
       label="ContextMenuSearchAndShopWithGoogleLens:disabled"/>
+  <int value="1161105475"
+      label="ClipboardWellFormedHtmlSanitizationWrite:disabled"/>
   <int value="1161822401" label="LoginDetection:enabled"/>
   <int value="1162420462" label="ShelfLauncherNudge:disabled"/>
   <int value="1162622865" label="EarlyCodeCache:disabled"/>
@@ -67780,6 +67836,7 @@
   <int value="1351213243" label="SuppressTextMessages:disabled"/>
   <int value="1351344112" label="ContentIndexingDownloadHome:enabled"/>
   <int value="1351830811" label="do-not-ignore-autocomplete-off"/>
+  <int value="1351858231" label="UnoDesktop:enabled"/>
   <int value="1352447982" label="enable-lcd-text"/>
   <int value="1352717172"
       label="ShowSyncPausedReasonCookiesClearedOnExit:disabled"/>
@@ -68989,6 +69046,7 @@
   <int value="1933376478" label="IsolatePrerenders:enabled"/>
   <int value="1934470615" label="AppIconInIntentChip:disabled"/>
   <int value="1935405622" label="AppServiceInstanceRegistry:disabled"/>
+  <int value="1936099143" label="RemotePlaybackBackend:enabled"/>
   <int value="1936308950" label="ExoConsumedByImeByFlag:disabled"/>
   <int value="1936774335" label="EcheSWASendStartSignaling:enabled"/>
   <int value="1936810062" label="WebVrVsyncAlign:enabled"/>
@@ -72657,6 +72715,7 @@
   <int value="36" label="DownloadIncognitoWarning"/>
   <int value="37" label="DEPRECATED: RestoreCustomTab"/>
   <int value="38" label="DEPRECATED: UndoCustomTabRestoration"/>
+  <int value="39" label="CvcSave"/>
 </enum>
 
 <enum name="MessageLoopProblems">
@@ -78919,13 +78978,14 @@
   <int value="7" label="Copy operation error"/>
   <int value="8" label="Copy operation needs password"/>
   <int value="9" label="Pinning failed due to low disk space"/>
-  <int value="10" label="Cloud authentication error"/>
+  <int value="10" label="Cloud access denied"/>
   <int value="11" label="Bad metadata received from cloud"/>
   <int value="12" label="Cloud quota full"/>
   <int value="13" label="Cloud error"/>
   <int value="14" label="No connectivity to cloud or sync disabled"/>
   <int value="15" label="Failed to generate destination folder URL"/>
   <int value="16" label="Invalid uploaded file URL"/>
+  <int value="17" label="Cloud re-authentication required"/>
 </enum>
 
 <enum name="OfficeFilesUseOutsideDriveHook">
@@ -86736,6 +86796,16 @@
   <int value="6" label="HTTPS traffic not blocked, HTTP 204 received"/>
 </enum>
 
+<enum name="PortalDetectorAggregateResult">
+  <int value="0" label="Unknown"/>
+  <int value="1" label="No Connectivity"/>
+  <int value="2" label="Partial Connectivity"/>
+  <int value="3" label="Redirect"/>
+  <int value="4" label="Internet After Partial Connectivity"/>
+  <int value="5" label="Internet After Redirect"/>
+  <int value="6" label="Internet"/>
+</enum>
+
 <enum name="PortalDetectorResult">
   <int value="0" label="Unknown"/>
   <int value="1" label="Connection Failure"/>
@@ -98514,6 +98584,7 @@
   <int value="20" label="Third-party cookies allow all radio"/>
   <int value="21" label="Third-party cookies block in incognito radio"/>
   <int value="22" label="Third-party cookies block all radio"/>
+  <int value="23" label="Block all third-party cookies toggle"/>
 </enum>
 
 <enum name="SettingsPrivacyGuideInteractions">
@@ -99889,15 +99960,17 @@
 <enum name="SigninHelperFlow">
   <int value="0" label="Shown">The signin flow was shown to the user.</int>
   <int value="1" label="Accepted">The user pressed accept to sign in.</int>
-  <int value="2" label="Rejected">The user pressed the reject to sign in.</int>
-  <int value="3" label="Dismissed">
+  <int value="2" label="(Obsolete) Rejected. Deprecated as of 10/2023.">
+    The user pressed the reject to sign in.
+  </int>
+  <int value="3" label="(Obsolete) Dismissed. Deprecated as of 10/2023.">
     The user pressed the X button to dismiss the signin promo.
   </int>
-  <int value="4" label="Ignored">
+  <int value="4" label="(Obsolete) Ignored. Deprecated as of 10/2023.">
     The user completely ignored the signin promo. Either they navigated away, or
     they used the page as is.
   </int>
-  <int value="5" label="Learn More">
+  <int value="5" label="(Obsolete) Learn More. Deprecated as of 10/2023.">
     The user clicked on the learn more link in the signin promo.
   </int>
   <int value="6" label="Accept with Defaults">
@@ -99906,13 +99979,17 @@
   <int value="7" label="Accept with Advanced">
     The sync was started with advanced settings.
   </int>
-  <int value="8" label="Auto-Accept with Defaults">
+  <int value="8"
+      label="(Obsolete) Auto-Accept with Defaults. Deprecated as of 10/2023.">
     The sync was started through auto-accept with default settings.
   </int>
-  <int value="9" label="Auto-Accept with Advanced">
+  <int value="9"
+      label="(Obsolete) Auto-Accept with Advanced. Deprecated as of 10/2023.">
     The sync was started through auto-accept with advanced settings.
   </int>
-  <int value="10" label="Undo">The sync was aborted with an undo button.</int>
+  <int value="10" label="(Obsolete) Undo. Deprecated as of 10/2023.">
+    The sync was aborted with an undo button.
+  </int>
 </enum>
 
 <enum name="SigninInterceptFREDialogEvent">
@@ -101142,8 +101219,9 @@
   <int value="2" label="SupervisedUser::InitSync (obsolete)"/>
   <int value="3" label="InlineLoginHandler::Signin"/>
   <int value="4" label="PrimaryAccountManager::ClearPrimaryAccount"/>
-  <int value="5" label="PrimaryAccountManager::LegacyPreDiceSigninFlow"/>
-  <int value="6" label="UserMenu:RemoveAccount"/>
+  <int value="5"
+      label="PrimaryAccountManager::LegacyPreDiceSigninFlow (obsolete)"/>
+  <int value="6" label="UserMenu:RemoveAccount (obsolete)"/>
   <int value="7" label="UserMenu::SignOutAllAccounts"/>
   <int value="8" label="Settings::Signout"/>
   <int value="9" label="Settings::PauseSync"/>
@@ -102915,6 +102993,7 @@
   <int value="5" label="Storage access allowed by 3PCD setting"/>
   <int value="6"
       label="Storage access allowed by 3PCD metadata grants content settings"/>
+  <int value="7" label="Temporary storage access allowed by 3PCD heuristics"/>
 </enum>
 
 <enum name="StorageBucketDurabilityParameter">
diff --git a/tools/metrics/histograms/metadata/METRIC_REVIEWER_OWNERS b/tools/metrics/histograms/metadata/METRIC_REVIEWER_OWNERS
index 3f6a2b8..1473c08 100644
--- a/tools/metrics/histograms/metadata/METRIC_REVIEWER_OWNERS
+++ b/tools/metrics/histograms/metadata/METRIC_REVIEWER_OWNERS
@@ -101,6 +101,7 @@
 # content
 dewittj@chromium.org
 harrisonsean@chromium.org
+jeffreycohen@chromium.org
 tbansal@chromium.org
 guiperez@google.com
 # cookie
@@ -345,6 +346,7 @@
 schenney@chromium.org
 # safe_browsing
 drubery@chromium.org
+jacastro@chromium.org
 thefrog@chromium.org
 xinghuilu@chromium.org
 # sb_client
@@ -379,6 +381,7 @@
 khorimoto@chromium.org
 # sharing
 ellyjones@chromium.org
+jeffreycohen@chromium.org
 knollr@chromium.org
 # signin
 alexilin@chromium.org
diff --git a/tools/metrics/histograms/metadata/accessibility/histograms.xml b/tools/metrics/histograms/metadata/accessibility/histograms.xml
index 7927a96..57e72d9 100644
--- a/tools/metrics/histograms/metadata/accessibility/histograms.xml
+++ b/tools/metrics/histograms/metadata/accessibility/histograms.xml
@@ -736,7 +736,7 @@
 
 <histogram
     name="Accessibility.CrosDictation.ListeningDuration.OnDeviceRecognition"
-    units="ms" expires_after="2023-11-30">
+    units="ms" expires_after="2024-03-31">
   <owner>katie@chromium.org</owner>
   <owner>chrome-a11y-core@google.com</owner>
   <summary>
@@ -768,7 +768,7 @@
 </histogram>
 
 <histogram name="Accessibility.CrosDictation.PumpkinSucceeded"
-    enum="BooleanUsage" expires_after="2023-11-30">
+    enum="BooleanUsage" expires_after="2024-03-31">
   <owner>akihiroota@chromium.org</owner>
   <owner>chrome-a11y-core@google.com</owner>
   <summary>
@@ -786,7 +786,7 @@
 </histogram>
 
 <histogram name="Accessibility.CrosDictation.UsedOnDeviceSpeech"
-    enum="BooleanUsage" expires_after="2023-11-30">
+    enum="BooleanUsage" expires_after="2024-03-31">
   <owner>katie@chromium.org</owner>
   <owner>chrome-a11y-core@google.com</owner>
   <summary>
@@ -950,7 +950,7 @@
 </histogram>
 
 <histogram name="Accessibility.CrosSelectToSpeak.SentenceNavigationMethod"
-    enum="CrosSelectToSpeakActivationMethod" expires_after="2023-11-30">
+    enum="CrosSelectToSpeakActivationMethod" expires_after="2024-03-31">
   <owner>ajitnarayanan@google.com</owner>
   <owner>chrome-a11y-core@google.com</owner>
   <summary>
@@ -1933,6 +1933,19 @@
   </summary>
 </histogram>
 
+<histogram
+    name="Accessibility.Performance.SendPendingAccessibilityEvents.PostLoad"
+    units="ms" expires_after="2024-02-04">
+  <owner>aleventhal@chromium.org</owner>
+  <owner>janewman@microsoft.com</owner>
+  <owner>chrome-a11y-core@google.com</owner>
+  <summary>
+    Tracks time spent on the render process sending pending accessibility
+    events. Logging commences after loading is complete and triggered each time
+    the method is run without returning early.
+  </summary>
+</histogram>
+
 <histogram name="Accessibility.Performance.Tree.Unserialize" units="ms"
     expires_after="2024-02-04">
   <owner>aleventhal@chromium.org</owner>
diff --git a/tools/metrics/histograms/metadata/android/histograms.xml b/tools/metrics/histograms/metadata/android/histograms.xml
index 682fa06..9da7d61 100644
--- a/tools/metrics/histograms/metadata/android/histograms.xml
+++ b/tools/metrics/histograms/metadata/android/histograms.xml
@@ -123,6 +123,7 @@
   <variant name=".ArCoreUpgrade"/>
   <variant name=".AutoDarkWebContents"/>
   <variant name=".ChromeSurvey"/>
+  <variant name=".CvcSave"/>
   <variant name=".DesktopSiteGlobalDefaultOptOut"/>
   <variant name=".DesktopSiteGlobalOptIn"/>
   <variant name=".DownloadIncognitoWarning"/>
@@ -794,7 +795,7 @@
 </histogram>
 
 <histogram name="Android.CpuAbiBitnessSupport" enum="CpuAbiBitnessSupport"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>bartekn@chromium.org</owner>
   <owner>lizeb@chromium.org</owner>
   <summary>
@@ -2176,7 +2177,7 @@
 </histogram>
 
 <histogram name="Android.MultipleUserProfilesState"
-    enum="MultipleUserProfilesState" expires_after="2024-01-31">
+    enum="MultipleUserProfilesState" expires_after="2024-03-31">
   <owner>ckitagawa@chromium.org</owner>
   <owner>yfriedman@chromium.org</owner>
   <owner>bartekn@chromium.org</owner>
@@ -3678,7 +3679,7 @@
 </histogram>
 
 <histogram name="Android.RestoreTabsOnFRE.ResultActionSecondShow"
-    enum="RestoreTabsOnFREResultAction" expires_after="2023-12-15">
+    enum="RestoreTabsOnFREResultAction" expires_after="2024-03-31">
   <owner>ckitagawa@chromium.org</owner>
   <owner>bjfong@google.com</owner>
   <owner>fredmello@chromium.org</owner>
@@ -3960,7 +3961,7 @@
 </histogram>
 
 <histogram name="Android.Sync.ActualSyncedTabCountPercentage"
-    units="% of tab count" expires_after="2024-01-30">
+    units="% of tab count" expires_after="2024-03-31">
   <owner>bjfong@google.com</owner>
   <owner>ckitagawa@chromium.org</owner>
   <summary>
@@ -4070,7 +4071,7 @@
 </histogram>
 
 <histogram name="Android.TabMultiSelectV2.BookmarkTabsCount" units="count"
-    expires_after="2024-03-17">
+    expires_after="2024-06-30">
   <owner>ckitagawa@chromium.org</owner>
   <owner>bjfong@google.com</owner>
   <owner>fredmello@chromium.org</owner>
@@ -4082,7 +4083,7 @@
 </histogram>
 
 <histogram name="Android.TabMultiSelectV2.SharingState"
-    enum="TabSelectionEditorShareActionState" expires_after="2024-02-25">
+    enum="TabSelectionEditorShareActionState" expires_after="2024-06-30">
   <owner>ckitagawa@chromium.org</owner>
   <owner>bjfong@google.com</owner>
   <owner>fredmello@chromium.org</owner>
@@ -4093,7 +4094,7 @@
 </histogram>
 
 <histogram name="Android.TabMultiSelectV2.TimeSinceLastShown" units="ms"
-    expires_after="2023-10-14">
+    expires_after="2024-06-30">
   <owner>ckitagawa@chromium.org</owner>
   <owner>fredmello@chromium.org</owner>
   <summary>
@@ -4150,7 +4151,7 @@
 </histogram>
 
 <histogram name="Android.TabStrip.PlaceholderStripLeftoverTabsCount"
-    units="tabs" expires_after="2023-12-31">
+    units="tabs" expires_after="2024-03-31">
   <owner>nemco@google.com</owner>
   <owner>skavuluru@google.com</owner>
   <owner>twellington@chromium.org</owner>
@@ -4170,7 +4171,7 @@
 
 <histogram
     name="Android.TabStrip.PlaceholderStripTabsCreatedDuringRestoreCount"
-    units="tabs" expires_after="2023-12-31">
+    units="tabs" expires_after="2024-03-31">
   <owner>nemco@google.com</owner>
   <owner>skavuluru@google.com</owner>
   <owner>twellington@chromium.org</owner>
@@ -4208,7 +4209,7 @@
 </histogram>
 
 <histogram name="Android.TabStrip.PlaceholderStripVisibleDuration" units="ms"
-    expires_after="2023-12-31">
+    expires_after="2024-03-31">
   <owner>nemco@google.com</owner>
   <owner>skavuluru@google.com</owner>
   <owner>twellington@chromium.org</owner>
@@ -4506,7 +4507,7 @@
 </histogram>
 
 <histogram name="Android.VersionCode" enum="VersionCode"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>bartekn@chromium.org</owner>
   <owner>lizeb@chromium.org</owner>
   <summary>
@@ -5642,7 +5643,7 @@
 </histogram>
 
 <histogram name="Android.WebView.SafeMode.SafeModeEnabled"
-    enum="BooleanEnabled" expires_after="2024-01-28">
+    enum="BooleanEnabled" expires_after="2024-03-31">
   <owner>ntfschr@chromium.org</owner>
   <owner>src/android_webview/OWNERS</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/apps/histograms.xml b/tools/metrics/histograms/metadata/apps/histograms.xml
index 021c13a..5af204e 100644
--- a/tools/metrics/histograms/metadata/apps/histograms.xml
+++ b/tools/metrics/histograms/metadata/apps/histograms.xml
@@ -1034,7 +1034,7 @@
 </histogram>
 
 <histogram name="Apps.AppList.Search.Session2.{LauncherSearchEntryPoint}"
-    enum="LauncherSearchSessionConclusion" expires_after="2024-01-31">
+    enum="LauncherSearchSessionConclusion" expires_after="2024-03-31">
   <owner>yulunwu@chromium.org</owner>
   <owner>tby@chromium.org</owner>
   <owner>tbarzic@chromium.org</owner>
@@ -1178,7 +1178,7 @@
 
 <histogram
     name="Apps.AppList.SortDiscoveryDurationAfterEducationNudgeV2.{TabletOrClamshell}"
-    units="ms" expires_after="2023-12-17">
+    units="ms" expires_after="2024-03-31">
   <owner>andrewxu@chromium.org</owner>
   <owner>tbarzic@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/arc/histograms.xml b/tools/metrics/histograms/metadata/arc/histograms.xml
index 95e5aea..8559b74 100644
--- a/tools/metrics/histograms/metadata/arc/histograms.xml
+++ b/tools/metrics/histograms/metadata/arc/histograms.xml
@@ -625,7 +625,7 @@
 </histogram>
 
 <histogram name="Arc.AppSync.InitialSession.InstalledAppSize" units="MB"
-    expires_after="2024-01-30">
+    expires_after="2024-03-31">
   <owner>batoon@google.com</owner>
   <owner>arc-core@google.com</owner>
   <summary>
@@ -649,7 +649,7 @@
 </histogram>
 
 <histogram name="Arc.AppSync.InitialSession.NumApps{ArcSyncAppTypes}"
-    units="apps" expires_after="2024-01-30">
+    units="apps" expires_after="2024-03-31">
   <owner>batoon@google.com</owner>
   <owner>arc-core@google.com</owner>
   <summary>
@@ -897,7 +897,7 @@
 
 <histogram
     name="Arc.CloudDpc{TimedCloudDpcOp}.TimeDelta{SuccessFailure}{ArcUserTypes}"
-    units="ms" expires_after="2024-01-30">
+    units="ms" expires_after="2024-03-31">
   <owner>batoon@google.com</owner>
   <owner>mhasank@google.com</owner>
   <owner>arc-commercial@google.com</owner>
@@ -2534,7 +2534,7 @@
 </histogram>
 
 <histogram name="Arc.VmDataMigration.GetAndroidDataInfoDuration" units="ms"
-    expires_after="2024-01-01">
+    expires_after="2024-03-31">
   <owner>momohatt@google.com</owner>
   <owner>youkichihosoi@google.com</owner>
   <owner>arc-storage@google.com</owner>
@@ -2834,6 +2834,7 @@
     state is changed to be maximized. The data is collected once when a
     maximizing operation happens.
   </summary>
+  <token key="ChromeOSAppType" variants="ChromeOSAppType"/>
 </histogram>
 
 <histogram name="Arc.WM.WindowMinimizedDelayTime.{ChromeOSAppType}" units="ms"
@@ -2845,6 +2846,7 @@
     state is changed to be minimized. The data is collected once when a
     minimizing operation happens.
   </summary>
+  <token key="ChromeOSAppType" variants="ChromeOSAppType"/>
 </histogram>
 
 </histograms>
diff --git a/tools/metrics/histograms/metadata/ash/histograms.xml b/tools/metrics/histograms/metadata/ash/histograms.xml
index 12d809dd..8111a28 100644
--- a/tools/metrics/histograms/metadata/ash/histograms.xml
+++ b/tools/metrics/histograms/metadata/ash/histograms.xml
@@ -1118,7 +1118,7 @@
 </histogram>
 
 <histogram name="Ash.BrowserDataMigrator.MoveMigrator.ResumeStep"
-    enum="MoveMigratorResumeStep" expires_after="2024-01-28">
+    enum="MoveMigratorResumeStep" expires_after="2024-03-31">
   <owner>ythjkt@chromium.org</owner>
   <owner>hidehiko@chromium.org</owner>
   <summary>
@@ -1156,7 +1156,7 @@
 </histogram>
 
 <histogram name="Ash.BrowserDataMigrator.MoveMigrator.TaskStatus"
-    enum="MoveMigratorTaskStatus" expires_after="2024-01-28">
+    enum="MoveMigratorTaskStatus" expires_after="2024-03-31">
   <owner>ythjkt@chromium.org</owner>
   <owner>hidehiko@chromium.org</owner>
   <summary>
@@ -2304,7 +2304,7 @@
 </histogram>
 
 <histogram name="Ash.Desks.CustomNamePercentage" units="%"
-    expires_after="2023-12-31">
+    expires_after="2024-03-31">
   <owner>benbecker@google.com</owner>
   <owner>janetmac@chromium.org</owner>
   <summary>
@@ -4681,7 +4681,7 @@
 
 <histogram
     name="Ash.NotificationView.{ChildView}.ScaleAndTranslate.AnimationSmoothness"
-    units="%" expires_after="2024-01-28">
+    units="%" expires_after="2024-03-31">
   <owner>leandre@chromium.org</owner>
   <owner>cros-status-area-eng@google.com</owner>
   <summary>
@@ -6280,7 +6280,7 @@
 </histogram>
 
 <histogram name="Ash.Smoothness.PercentDroppedFrames_1sWindow2{Stage}"
-    units="%" expires_after="2024-01-29">
+    units="%" expires_after="2024-03-31">
   <owner>xiyuan@chromium.org</owner>
   <owner>cros-sw-perf@google.com</owner>
   <summary>
@@ -6937,7 +6937,7 @@
 </histogram>
 
 <histogram name="Ash.UserDataStatsRecorder.DataSize.TotalSize" units="MB"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>ythjkt@chromium.org</owner>
   <owner>hidehiko@chromium.org</owner>
   <summary>
@@ -7227,7 +7227,7 @@
 </histogram>
 
 <histogram name="Ash.Wallpaper.GooglePhotos.Api.{Api}.RefreshCount"
-    units="count" expires_after="2024-01-27">
+    units="count" expires_after="2024-03-31">
   <owner>thuongphan@google.com</owner>
   <owner>cowmoo@google.com</owner>
   <owner>assistive-eng@google.com</owner>
@@ -7296,7 +7296,7 @@
 </histogram>
 
 <histogram name="Ash.Wallpaper.GooglePhotos.Source2"
-    enum="WallpaperGooglePhotosSource" expires_after="2024-01-30">
+    enum="WallpaperGooglePhotosSource" expires_after="2024-03-31">
   <owner>thuongphan@google.com</owner>
   <owner>cowmoo@google.com</owner>
   <owner>assistive-eng@google.com</owner>
@@ -7735,7 +7735,7 @@
 </histogram>
 
 <histogram name="Ash.Wm.MultiWindowResizerClick" enum="Boolean"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>michelefan@chromium.org</owner>
   <owner>xdai@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/autofill/histograms.xml b/tools/metrics/histograms/metadata/autofill/histograms.xml
index fe605b9a..f376b2eb 100644
--- a/tools/metrics/histograms/metadata/autofill/histograms.xml
+++ b/tools/metrics/histograms/metadata/autofill/histograms.xml
@@ -426,7 +426,7 @@
 </histogram>
 
 <histogram name="Autofill.AddressesSuppressedForDisuse" units="addresses"
-    expires_after="2023-12-12">
+    expires_after="2024-03-31">
   <owner>battre@chromium.org</owner>
   <owner>chrome-autofill-alerts@google.com</owner>
   <summary>
@@ -664,7 +664,7 @@
 
 <histogram name="Autofill.Autocomplete.SingleEntryRemovalMethod"
     enum="AutofillAutocompleteSingleEntryRemovalMethod"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>jkeitel@google.com</owner>
   <owner>chrome-autofill-team@google.com</owner>
   <summary>
@@ -1392,10 +1392,6 @@
   </token>
   <token key="SaveSituation">
     <variant name="" summary="aggregated across all situations"/>
-    <variant name=".FromDynamicChangeForm"
-        summary="shown dynamic change forms"/>
-    <variant name=".FromNonFocusableForm"
-        summary="shown from non-focusable forms"/>
     <variant name=".RequestingCardholderName"
         summary="explicitly requesting cardholder name"/>
     <variant name=".RequestingExpirationDate"
@@ -1696,6 +1692,17 @@
   </summary>
 </histogram>
 
+<histogram name="Autofill.ExtendedMenu.EditAddress"
+    enum="BooleanAutofillExtendedMenuEditAddress" expires_after="2024-10-01">
+  <owner>tchudakov@google.com</owner>
+  <owner>chrome-autofill-alerts@google.com</owner>
+  <summary>
+    This metric measures how many users Clicked on the Edit Address option in
+    the extended Autofill menu and the next action. The metric is logged when
+    the user closes the edit address profile dialog.
+  </summary>
+</histogram>
+
 <histogram
     name="Autofill.ExtractNewForms.ShallowEqualityDiffersFromDeepEquality"
     enum="FormDataEquality" expires_after="M108">
@@ -2690,7 +2697,7 @@
 </histogram>
 
 <histogram name="Autofill.LabelInference.InferredLabelSource.AtSubmission2"
-    enum="InferredLabelSource" expires_after="2024-01-28">
+    enum="InferredLabelSource" expires_after="2024-03-31">
   <owner>fleimgruber@google.com</owner>
   <owner>chrome-autofill-team@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/blink/histograms.xml b/tools/metrics/histograms/metadata/blink/histograms.xml
index bf5dd5e..8f363b1 100644
--- a/tools/metrics/histograms/metadata/blink/histograms.xml
+++ b/tools/metrics/histograms/metadata/blink/histograms.xml
@@ -652,7 +652,7 @@
 </histogram>
 
 <histogram name="Blink.Canvas.WebGPUMaxRecycledResourcesInKB" units="KB"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>magchen@chromium.org</owner>
   <owner>enga@chromium.org</owner>
   <owner>graphics-dev@chromium.org</owner>
@@ -1107,7 +1107,7 @@
   </summary>
 </histogram>
 
-<histogram name="Blink.EffectiveZoom" units="%" expires_after="2024-01-28">
+<histogram name="Blink.EffectiveZoom" units="%" expires_after="2024-03-31">
   <owner>pdr@chromium.org</owner>
   <owner>paint-dev@chromium.org</owner>
   <summary>
@@ -1453,7 +1453,7 @@
 </histogram>
 
 <histogram name="Blink.FedCm.PreventSilentAccessFrameType"
-    enum="FedCmPreventSilentAccessFrameType" expires_after="2023-11-10">
+    enum="FedCmPreventSilentAccessFrameType" expires_after="2024-05-10">
   <owner>npm@chromium.org</owner>
   <owner>web-identity-eng@google.com</owner>
   <summary>
@@ -1537,7 +1537,7 @@
 </histogram>
 
 <histogram name="Blink.FedCm.Status.MediationRequirement"
-    enum="CredentialManagerMediationRequirement" expires_after="2023-11-10">
+    enum="CredentialManagerMediationRequirement" expires_after="2024-05-10">
   <owner>npm@chromium.org</owner>
   <owner>web-identity-eng@google.com</owner>
   <summary>
@@ -2731,7 +2731,7 @@
 </histogram>
 
 <histogram name="Blink.LCPP.LCPElementLocatorSize" units="bytes"
-    expires_after="2024-01-29">
+    expires_after="2024-03-31">
   <owner>kouhei@chromium.org</owner>
   <owner>
     src/third_party/blink/renderer/core/lcp_critical_path_predictor/OWNERS
diff --git a/tools/metrics/histograms/metadata/bluetooth/histograms.xml b/tools/metrics/histograms/metadata/bluetooth/histograms.xml
index 7d29fa6..7d31358 100644
--- a/tools/metrics/histograms/metadata/bluetooth/histograms.xml
+++ b/tools/metrics/histograms/metadata/bluetooth/histograms.xml
@@ -331,7 +331,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.ConnectDevice.Result"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -385,7 +385,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.DeviceMetadataFetcher.Result"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -397,7 +397,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.Discovered.Version"
-    enum="FastPairVersion" expires_after="2024-01-28">
+    enum="FastPairVersion" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -635,7 +635,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.FootprintsFetcher.Delete.Result"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -649,7 +649,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.FootprintsFetcher.Get.Result"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -663,7 +663,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.FootprintsFetcher.Post.Result"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -729,7 +729,7 @@
 
 <histogram
     name="Bluetooth.ChromeOS.FastPair.GattConnection.EffectiveSuccessRate"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -904,7 +904,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.KeyBasedPairing.Write.Result"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -1183,7 +1183,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.Passkey.Write.Result"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -1384,7 +1384,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.SavedDevices.DeviceCount"
-    units="devices" expires_after="2024-01-28">
+    units="devices" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -1398,7 +1398,7 @@
 
 <histogram
     name="Bluetooth.ChromeOS.FastPair.SavedDevices.GetSavedDevices.Result"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
@@ -1502,7 +1502,7 @@
 </histogram>
 
 <histogram name="Bluetooth.ChromeOS.FastPair.TotalGattConnectionTime"
-    units="ms" expires_after="2024-01-28">
+    units="ms" expires_after="2024-03-31">
   <owner>jackshira@google.com</owner>
   <owner>dclasson@google.com</owner>
   <owner>brandosocarras@google.com</owner>
diff --git a/tools/metrics/histograms/metadata/bookmarks/histograms.xml b/tools/metrics/histograms/metadata/bookmarks/histograms.xml
index 638c7523..0ceb988 100644
--- a/tools/metrics/histograms/metadata/bookmarks/histograms.xml
+++ b/tools/metrics/histograms/metadata/bookmarks/histograms.xml
@@ -719,7 +719,7 @@
 </histogram>
 
 <histogram name="PowerBookmarks.SidePanel.Search.CTR"
-    enum="BookmarksSidePanelSearchCTREvent" expires_after="2024-01-28">
+    enum="BookmarksSidePanelSearchCTREvent" expires_after="2024-03-31">
   <owner>emshack@chromium.org</owner>
   <owner>chrome-desktop-sea@google.com</owner>
   <component>UI&gt;Browser&gt;PowerBookmarks</component>
@@ -731,7 +731,7 @@
 </histogram>
 
 <histogram name="PowerBookmarks.SidePanel.SortTypeShown"
-    enum="BookmarksSidePanelSortType" expires_after="2024-01-28">
+    enum="BookmarksSidePanelSortType" expires_after="2024-03-31">
   <owner>emshack@chromium.org</owner>
   <owner>chrome-desktop-sea@google.com</owner>
   <component>UI&gt;Browser&gt;PowerBookmarks</component>
@@ -742,7 +742,7 @@
 </histogram>
 
 <histogram name="PowerBookmarks.SidePanel.ViewTypeShown"
-    enum="BookmarksSidePanelViewType" expires_after="2024-01-28">
+    enum="BookmarksSidePanelViewType" expires_after="2024-03-31">
   <owner>emshack@chromium.org</owner>
   <owner>chrome-desktop-sea@google.com</owner>
   <component>UI&gt;Browser&gt;PowerBookmarks</component>
diff --git a/tools/metrics/histograms/metadata/browser/histograms.xml b/tools/metrics/histograms/metadata/browser/histograms.xml
index 27a77c40..b844c29 100644
--- a/tools/metrics/histograms/metadata/browser/histograms.xml
+++ b/tools/metrics/histograms/metadata/browser/histograms.xml
@@ -533,7 +533,7 @@
 </histogram>
 
 <histogram name="Browser.PaintPreview.TabbedPlayer.ExitCause"
-    enum="TabbedPaintPreviewExitCause" expires_after="2023-11-27">
+    enum="TabbedPaintPreviewExitCause" expires_after="2024-03-31">
   <owner>ckitagawa@chromium.org</owner>
   <owner>fredmello@chromium.org</owner>
   <owner>chrome-fdt@google.com</owner>
@@ -721,7 +721,7 @@
 </histogram>
 
 <histogram name="Browser.Tabs.TabSwitchResult3{TabSwitchingType}"
-    enum="TabSwitchResult2" expires_after="2024-01-26">
+    enum="TabSwitchResult2" expires_after="2024-03-31">
   <owner>fdoray@chromium.org</owner>
   <owner>joenotcharles@google.com</owner>
   <owner>catan-team@chromium.org</owner>
@@ -733,7 +733,7 @@
 </histogram>
 
 <histogram name="Browser.Tabs.TotalIncompleteSwitchDuration3{TabSwitchingType}"
-    units="ms" expires_after="2024-01-26">
+    units="ms" expires_after="2024-03-31">
   <owner>fdoray@chromium.org</owner>
   <owner>jonross@chromium.org</owner>
   <owner>joenotcharles@google.com</owner>
@@ -747,7 +747,7 @@
 </histogram>
 
 <histogram name="Browser.Tabs.TotalSwitchDuration3{TabSwitchingType}"
-    units="ms" expires_after="2024-01-26">
+    units="ms" expires_after="2024-03-31">
   <owner>jonross@chromium.org</owner>
   <owner>joenotcharles@google.com</owner>
   <owner>catan-team@chromium.org</owner>
diff --git a/tools/metrics/histograms/metadata/chrome/histograms.xml b/tools/metrics/histograms/metadata/chrome/histograms.xml
index f1cba03..99ab946 100644
--- a/tools/metrics/histograms/metadata/chrome/histograms.xml
+++ b/tools/metrics/histograms/metadata/chrome/histograms.xml
@@ -153,7 +153,7 @@
 </histogram>
 
 <histogram name="Chrome.Lacros.Smoothness.PercentDroppedFrames_1sWindow2"
-    units="%" expires_after="2024-01-29">
+    units="%" expires_after="2024-03-31">
   <owner>xiyuan@chromium.org</owner>
   <owner>cros-sw-perf@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/chromeos/histograms.xml b/tools/metrics/histograms/metadata/chromeos/histograms.xml
index 00744ae0..f87c4169 100644
--- a/tools/metrics/histograms/metadata/chromeos/histograms.xml
+++ b/tools/metrics/histograms/metadata/chromeos/histograms.xml
@@ -57,10 +57,13 @@
     <owner>zentaro@chromium.org</owner>
     <owner>cros-peripherals@google.com</owner>
   </variant>
-  <variant name="ESim" summary="esim">
-    <owner>azeemarshad@chromium.org</owner>
+  <variant name="EnterpriseESim" summary="enterprise eSIM">
+    <owner>chadduffin@chromium.org</owner>
     <owner>cros-connectivity@google.com</owner>
+  </variant>
+  <variant name="ESim" summary="eSIM">
     <owner>hsuregan@chromium.org</owner>
+    <owner>cros-connectivity@google.com</owner>
   </variant>
   <variant name="FakeKeyboardHeuristic" summary="Fake Keyboard Heuristic">
     <owner>wmahon@chromium.org</owner>
@@ -179,7 +182,7 @@
 </variants>
 
 <histogram name="ChromeOS.AnomalousProcCount.AttemptedMemfdExec"
-    units="processes" expires_after="2024-01-31">
+    units="processes" expires_after="2024-03-31">
   <owner>enlightened@chromium.org</owner>
   <owner>chromeos-hardening@google.com</owner>
   <summary>
@@ -195,7 +198,7 @@
 </histogram>
 
 <histogram name="ChromeOS.AnomalousProcCount.ForbiddenIntersection"
-    units="processes" expires_after="2024-01-31">
+    units="processes" expires_after="2024-03-31">
   <owner>enlightened@chromium.org</owner>
   <owner>chromeos-hardening@google.com</owner>
   <summary>
@@ -989,7 +992,7 @@
 </histogram>
 
 <histogram name="ChromeOS.Debugd.Perf.{FunctionName}" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>enlightened@google.com</owner>
   <owner>jorgelo@google.com</owner>
   <owner>chromeos-security-core@google.com</owner>
@@ -1298,7 +1301,7 @@
 </histogram>
 
 <histogram name="ChromeOS.HardwareVerifier.TimeToFinish" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>itspeter@chromium.org</owner>
   <owner>stimim@chromium.org</owner>
   <owner>chromeos-runtime-probe@google.com</owner>
@@ -1308,7 +1311,7 @@
 </histogram>
 
 <histogram name="ChromeOS.HardwareVerifier.TimeToProbe" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>itspeter@chromium.org</owner>
   <owner>stimim@chromium.org</owner>
   <owner>chromeos-runtime-probe@google.com</owner>
@@ -1619,7 +1622,7 @@
 
 <histogram
     name="ChromeOS.Inputs.TouchscreenUsage.Temporary.{TimePeriod}.{Mode}"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
 <!-- TODO(b/270610982): Remove excess time periods once an optimal time period has been selected. -->
 
   <owner>wmahon@google.com</owner>
@@ -2191,7 +2194,7 @@
 </histogram>
 
 <histogram name="ChromeOS.Sandboxing.NoNewPrivsProcPercentage" units="%"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>enlightened@chromium.org</owner>
   <owner>chromeos-hardening@google.com</owner>
   <summary>
@@ -2205,7 +2208,7 @@
 </histogram>
 
 <histogram name="ChromeOS.Sandboxing.NonInitNsProcPercentage" units="%"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>enlightened@chromium.org</owner>
   <owner>chromeos-hardening@google.com</owner>
   <summary>
@@ -2219,7 +2222,7 @@
 </histogram>
 
 <histogram name="ChromeOS.Sandboxing.NonRootProcPercentage" units="%"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>enlightened@chromium.org</owner>
   <owner>chromeos-hardening@google.com</owner>
   <summary>
@@ -2233,7 +2236,7 @@
 </histogram>
 
 <histogram name="ChromeOS.Sandboxing.SecCompCoverage" units="%"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>enlightened@chromium.org</owner>
   <owner>chromeos-hardening@google.com</owner>
   <summary>
@@ -2247,7 +2250,7 @@
 </histogram>
 
 <histogram name="ChromeOS.Sandboxing.UnprivProcPercentage" units="%"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>enlightened@chromium.org</owner>
   <owner>chromeos-hardening@google.com</owner>
   <summary>
@@ -3098,7 +3101,7 @@
 </histogram>
 
 <histogram name="ChromeOS.Stability.{Severity}" enum="CrashSeverityProductType"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>mutexlox@google.com</owner>
   <owner>palaksh@google.com</owner>
   <owner>kendraketsui@google.com</owner>
diff --git a/tools/metrics/histograms/metadata/content/histograms.xml b/tools/metrics/histograms/metadata/content/histograms.xml
index 1101addb..b2e7b82 100644
--- a/tools/metrics/histograms/metadata/content/histograms.xml
+++ b/tools/metrics/histograms/metadata/content/histograms.xml
@@ -48,6 +48,7 @@
   <variant name=".QueryWebFeed" summary="QueryWebFeed"/>
   <variant name=".SingleWebFeedListContents"
       summary="SingleWebFeedListContents"/>
+  <variant name=".SupervisedFeed" summary="SupervisedFeed"/>
   <variant name=".UnfollowWebFeed" summary="UnfollowWebFeed"/>
   <variant name=".UploadActions" summary="UploadActions"/>
   <variant name=".WebFeedListContents" summary="WebFeedListContents"/>
@@ -791,7 +792,7 @@
 </histogram>
 
 <histogram name="ContentSuggestions.Feed.CanBeShown" enum="BooleanAllowed"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>harringtond@chromium.org</owner>
   <owner>thegreenfrog@chromium.org</owner>
   <owner>feed@chromium.org</owner>
@@ -1718,7 +1719,7 @@
 </histogram>
 
 <histogram name="ContentSuggestions.Feed.WebFeed.SortType" enum="FeedSortType"
-    expires_after="2023-12-23">
+    expires_after="2024-03-31">
   <owner>adamta@google.com</owner>
   <owner>sczs@chromium.org</owner>
   <owner>feed@chromium.org</owner>
diff --git a/tools/metrics/histograms/metadata/cookie/histograms.xml b/tools/metrics/histograms/metadata/cookie/histograms.xml
index d733b9ce..3de3eba3 100644
--- a/tools/metrics/histograms/metadata/cookie/histograms.xml
+++ b/tools/metrics/histograms/metadata/cookie/histograms.xml
@@ -667,7 +667,7 @@
   </summary>
 </histogram>
 
-<histogram name="Cookie.NumKeys" units="keys" expires_after="2024-01-28">
+<histogram name="Cookie.NumKeys" units="keys" expires_after="2024-03-31">
   <owner>cfredric@chromium.org</owner>
   <owner>kaustubhag@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/custom_tabs/histograms.xml b/tools/metrics/histograms/metadata/custom_tabs/histograms.xml
index 7aa5e2c..8866ed0 100644
--- a/tools/metrics/histograms/metadata/custom_tabs/histograms.xml
+++ b/tools/metrics/histograms/metadata/custom_tabs/histograms.xml
@@ -916,7 +916,7 @@
 </histogram>
 
 <histogram name="TrustedWebActivity.TimeInVerifiedOrigin.V2" units="ms"
-    expires_after="M120">
+    expires_after="M126">
   <owner>peconn@chromium.org</owner>
   <owner>peter@chromium.org</owner>
   <summary>
@@ -926,7 +926,7 @@
 </histogram>
 
 <histogram name="TrustedWebActivity.TimeOutOfVerifiedOrigin.V2" units="ms"
-    expires_after="M120">
+    expires_after="M126">
   <owner>peconn@chromium.org</owner>
   <owner>peter@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/dev/OWNERS b/tools/metrics/histograms/metadata/dev/OWNERS
index 309ba9ef..3c151ee 100644
--- a/tools/metrics/histograms/metadata/dev/OWNERS
+++ b/tools/metrics/histograms/metadata/dev/OWNERS
@@ -4,4 +4,5 @@
 # Use chromium-metrics-reviews@google.com as a backup.
 bmeurer@chromium.org
 changhaohan@chromium.org
+dsv@chromium.org
 yangguo@chromium.org
diff --git a/tools/metrics/histograms/metadata/download/histograms.xml b/tools/metrics/histograms/metadata/download/histograms.xml
index e53cb40..4379234 100644
--- a/tools/metrics/histograms/metadata/download/histograms.xml
+++ b/tools/metrics/histograms/metadata/download/histograms.xml
@@ -87,7 +87,7 @@
 </histogram>
 
 <histogram name="Download.BandwidthOverallBytesPerSecond2" units="bytes/second"
-    expires_after="2023-12-10">
+    expires_after="2024-03-31">
   <owner>qinmin@chromium.org</owner>
   <summary>
     Overall bandwidth seen for a completed download. This includes all file
@@ -499,7 +499,7 @@
 </histogram>
 
 <histogram name="Download.IOSDownloadedFileAction" enum="DownloadedFileAction"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>sdefresne@chromium.org</owner>
   <owner>ewannpv@chromium.org</owner>
   <owner>mrefaat@chromium.org</owner>
@@ -534,7 +534,7 @@
 </histogram>
 
 <histogram name="Download.IOSDownloadFileResult" enum="DownloadFileResult"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>sdefresne@chromium.org</owner>
   <owner>ewannpv@chromium.org</owner>
   <owner>mrefaat@chromium.org</owner>
@@ -553,7 +553,7 @@
 </histogram>
 
 <histogram name="Download.IOSDownloadFileUIGoogleDrive"
-    enum="DownloadFileUIGoogleDrive" expires_after="2024-01-28">
+    enum="DownloadFileUIGoogleDrive" expires_after="2024-03-31">
   <owner>sdefresne@chromium.org</owner>
   <owner>ewannpv@chromium.org</owner>
   <owner>mrefaat@chromium.org</owner>
diff --git a/tools/metrics/histograms/metadata/enterprise/histograms.xml b/tools/metrics/histograms/metadata/enterprise/histograms.xml
index 48c009a..36e7660 100644
--- a/tools/metrics/histograms/metadata/enterprise/histograms.xml
+++ b/tools/metrics/histograms/metadata/enterprise/histograms.xml
@@ -2685,6 +2685,19 @@
   </summary>
 </histogram>
 
+<histogram name="Enterprise.SafeSites.Latency" units="ms"
+    expires_after="2024-02-11">
+  <owner>ftirelo@chromium.org</owner>
+  <owner>ljjlee@google.com</owner>
+  <owner>cbe-eng@google.com</owner>
+  <summary>
+    The latency of the request to the SafeSites API to classify URLs for users
+    with the SafeSitesFilterBehavior policy. This is measured once per
+    classified URL that requires a network request (URLs returned from the cache
+    are not recorded).
+  </summary>
+</histogram>
+
 <histogram
     name="Enterprise.SecondaryGoogleAccountUsage.PolicyFetch.ResponseLatency"
     units="ms" expires_after="2023-10-04">
diff --git a/tools/metrics/histograms/metadata/extensions/histograms.xml b/tools/metrics/histograms/metadata/extensions/histograms.xml
index ee4d503..ddbe3b3 100644
--- a/tools/metrics/histograms/metadata/extensions/histograms.xml
+++ b/tools/metrics/histograms/metadata/extensions/histograms.xml
@@ -69,7 +69,7 @@
 </histogram>
 
 <histogram name="ExtensionBlacklist.BlockCRX" enum="ExtensionLocation"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>anunoy@chromium.org</owner>
   <owner>chrome-counter-abuse-alerts@google.com</owner>
   <summary>
@@ -147,7 +147,7 @@
 </histogram>
 
 <histogram name="Extensions.ActiveScriptController.DeniedExtensions"
-    units="Extension Count" expires_after="2023-12-04">
+    units="Extension Count" expires_after="2024-03-31">
   <owner>rdevlin.cronin@chromium.org</owner>
   <owner>extensions-core@chromium.org</owner>
   <summary>
@@ -1330,7 +1330,10 @@
     chosen based on when the majority of events are ack'd.
   </summary>
   <token key="BackgroundContextType">
-    <variant name="ExtensionServiceWorker" summary="service worker."/>
+    <variant name="ExtensionServiceWorker2"
+        summary="service worker. Replaced previous version because values
+                 were inconsistent with excluding
+                 EventRouter::DispatchEventToSender() events 2023-09"/>
   </token>
 </histogram>
 
@@ -4248,6 +4251,22 @@
 </histogram>
 
 <histogram
+    name="Extensions.ServiceWorkerBackground.FinishedExternalRequest_Result"
+    enum="ServiceWorkerStatusCode" expires_after="never">
+<!-- expires-never: Monitors core extension system health. -->
+
+  <owner>jlulejian@chromium.org</owner>
+  <owner>extensions-core@chromium.org</owner>
+  <summary>
+    Tracks the result (ServiceWorkerExternalRequestResult) of when we attempt to
+    remove (finish) an external request for the extension service worker.
+    Emitted when we attempt to finish the external request after the browser has
+    received an ack from the renderer that it fired the event in the service
+    worker.
+  </summary>
+</histogram>
+
+<histogram
     name="Extensions.ServiceWorkerBackground.ProcessManagerFinishedExternalRequestResultWithSuccessfulStart"
     enum="ServiceWorkerExternalRequestResult" expires_after="2024-08-01">
   <owner>rdevlin.cronin@chromium.org</owner>
@@ -4341,6 +4360,21 @@
   </summary>
 </histogram>
 
+<histogram
+    name="Extensions.ServiceWorkerBackground.StartingExternalRequest_Result"
+    enum="ServiceWorkerExternalRequestResult" expires_after="never">
+<!-- expires-never: Monitors core extension system health. -->
+
+  <owner>jlulejian@chromium.org</owner>
+  <owner>extensions-core@chromium.org</owner>
+  <summary>
+    Tracks the result (ServiceWorkerExternalRequestResult) of when we attempt to
+    add (start) an external request for the extension service worker. Logged
+    each time an external request is added prior to dispatching the event to the
+    service worker.
+  </summary>
+</histogram>
+
 <histogram name="Extensions.ServiceWorkerBackground.StartWorker_FailStatus"
     enum="ServiceWorkerStatusCode" expires_after="never">
 <!-- expires-never: Monitors core extension system health. -->
diff --git a/tools/metrics/histograms/metadata/families/histograms.xml b/tools/metrics/histograms/metadata/families/histograms.xml
index a64c294..16ff789 100644
--- a/tools/metrics/histograms/metadata/families/histograms.xml
+++ b/tools/metrics/histograms/metadata/families/histograms.xml
@@ -785,16 +785,6 @@
   </summary>
 </histogram>
 
-<histogram name="ManagedUsers.SafeSitesDelay" units="ms"
-    expires_after="2024-02-11">
-  <owner>agawronska@chromium.org</owner>
-  <owner>cros-families-eng@google.com</owner>
-  <summary>
-    The extra page load delays introduced by network requests due to the
-    supervised user SafeSites feature, measured once per page load.
-  </summary>
-</histogram>
-
 <histogram name="SupervisedUsers.ExtensionEnablement"
     enum="SupervisedUserExtensionEnablement" expires_after="2024-02-11">
   <owner>courtneywong@chromium.org</owner>
diff --git a/tools/metrics/histograms/metadata/feature_engagement/histograms.xml b/tools/metrics/histograms/metadata/feature_engagement/histograms.xml
index a63e3cb2..9f73bd7b 100644
--- a/tools/metrics/histograms/metadata/feature_engagement/histograms.xml
+++ b/tools/metrics/histograms/metadata/feature_engagement/histograms.xml
@@ -501,7 +501,7 @@
 </histogram>
 
 <histogram name="InProductHelp.DismissalReason.iOS"
-    enum="InProductHelpDismissalReason" expires_after="2024-01-28">
+    enum="InProductHelpDismissalReason" expires_after="2024-03-31">
   <owner>lpromero@google.com</owner>
   <owner>gambard@chromium.org</owner>
   <summary>
@@ -545,7 +545,7 @@
 </histogram>
 
 <histogram name="InProductHelp.SnoozeAction" enum="InProductHelpSnoozeAction"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>haileywang@chromium.org</owner>
   <owner>shaktisahu@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/gpu/histograms.xml b/tools/metrics/histograms/metadata/gpu/histograms.xml
index a1c20ad..bb7e8d6 100644
--- a/tools/metrics/histograms/metadata/gpu/histograms.xml
+++ b/tools/metrics/histograms/metadata/gpu/histograms.xml
@@ -242,7 +242,7 @@
 </histogram>
 
 <histogram name="GPU.ANGLE.D3D11CreateDeviceError" enum="Hresult"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>jonahr@google.com</owner>
   <owner>angle-team@google.com</owner>
   <summary>
@@ -1410,7 +1410,7 @@
 </histogram>
 
 <histogram name="GPU.TransferCache.EntryFound" enum="BooleanYesNo"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>boliu@chromium.org</owner>
   <owner>graphics-dev@chromium.org</owner>
   <summary>
@@ -1420,7 +1420,7 @@
 </histogram>
 
 <histogram name="GPU.TransferCache.MaxHistoricalTimeSinceLastUse" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>boliu@chromium.org</owner>
   <owner>graphics-dev@chromium.org</owner>
   <summary>
@@ -1430,7 +1430,7 @@
 </histogram>
 
 <histogram name="GPU.TransferCache.ReusedTimes" units="Reuses"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>boliu@chromium.org</owner>
   <owner>graphics-dev@chromium.org</owner>
   <summary>
@@ -1440,7 +1440,7 @@
 </histogram>
 
 <histogram name="GPU.TransferCache.TimeSinceLastUse" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>boliu@chromium.org</owner>
   <owner>graphics-dev@chromium.org</owner>
   <summary>
@@ -1450,7 +1450,7 @@
 </histogram>
 
 <histogram name="GPU.TransferCache.TimeSinceLastUseOnDelete" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>boliu@chromium.org</owner>
   <owner>graphics-dev@chromium.org</owner>
   <summary>
@@ -1690,7 +1690,7 @@
 </histogram>
 
 <histogram name="GPU.WebGPU.{Cacheable}.CacheHit" units="microseconds"
-    expires_after="2024-01-25">
+    expires_after="2024-03-31">
   <owner>lokokung@google.com</owner>
   <owner>mdb.webgpu-dev-team@google.com</owner>
   <summary>
@@ -1703,7 +1703,7 @@
 </histogram>
 
 <histogram name="GPU.WebGPU.{Cacheable}.CacheMiss" units="microseconds"
-    expires_after="2024-01-25">
+    expires_after="2024-03-31">
   <owner>lokokung@google.com</owner>
   <owner>mdb.webgpu-dev-team@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/histogram_suffixes_list.xml b/tools/metrics/histograms/metadata/histogram_suffixes_list.xml
index 6d0bd0d4..3a217f8 100644
--- a/tools/metrics/histograms/metadata/histogram_suffixes_list.xml
+++ b/tools/metrics/histograms/metadata/histogram_suffixes_list.xml
@@ -449,48 +449,6 @@
   <affected-histogram name="Autofill.FormEvents.CreditCard"/>
 </histogram_suffixes>
 
-<histogram_suffixes name="AutofillSaveCreditCardPromptFromDynamicChangeForm"
-    separator=".">
-  <suffix name="FromDynamicChangeForm"
-      label="Prompt shown from dynamic change forms"/>
-  <affected-histogram name="Autofill.CreditCardInfoBar.Local"/>
-  <affected-histogram name="Autofill.CreditCardInfoBar.Server"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptOffer.Local.FirstShow"/>
-  <affected-histogram name="Autofill.SaveCreditCardPromptOffer.Local.Reshows"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptOffer.Upload.FirstShow"/>
-  <affected-histogram name="Autofill.SaveCreditCardPromptOffer.Upload.Reshows"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptResult.Local.FirstShow"/>
-  <affected-histogram name="Autofill.SaveCreditCardPromptResult.Local.Reshows"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptResult.Upload.FirstShow"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptResult.Upload.Reshows"/>
-</histogram_suffixes>
-
-<histogram_suffixes name="AutofillSaveCreditCardPromptFromNonFocusableForm"
-    separator=".">
-  <suffix name="FromNonFocusableForm"
-      label="Prompt shown from non-focusable forms"/>
-  <affected-histogram name="Autofill.CreditCardInfoBar.Local"/>
-  <affected-histogram name="Autofill.CreditCardInfoBar.Server"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptOffer.Local.FirstShow"/>
-  <affected-histogram name="Autofill.SaveCreditCardPromptOffer.Local.Reshows"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptOffer.Upload.FirstShow"/>
-  <affected-histogram name="Autofill.SaveCreditCardPromptOffer.Upload.Reshows"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptResult.Local.FirstShow"/>
-  <affected-histogram name="Autofill.SaveCreditCardPromptResult.Local.Reshows"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptResult.Upload.FirstShow"/>
-  <affected-histogram
-      name="Autofill.SaveCreditCardPromptResult.Upload.Reshows"/>
-</histogram_suffixes>
-
 <histogram_suffixes name="AutofillSaveCreditCardPromptRequestingCardholderName"
     separator=".">
   <suffix name="RequestingCardholderName"
diff --git a/tools/metrics/histograms/metadata/history/histograms.xml b/tools/metrics/histograms/metadata/history/histograms.xml
index 956b29a..2870e9f4 100644
--- a/tools/metrics/histograms/metadata/history/histograms.xml
+++ b/tools/metrics/histograms/metadata/history/histograms.xml
@@ -498,7 +498,7 @@
 </histogram>
 
 <histogram name="History.Clusters.Actions.FinalState.Number{Event}"
-    units="count" expires_after="2024-01-31">
+    units="count" expires_after="2024-03-31">
   <owner>mcrouse@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -893,7 +893,7 @@
 
 <histogram
     name="History.Clusters.Backend.GetMostRecentClusters.{Segment}{Source}"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
   <owner>manukh@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -930,7 +930,7 @@
 
 <histogram
     name="History.Clusters.Backend.GetMostRecentClustersForUI.GetMostRecentPersistedClustersTimeHorizon{Source}"
-    units="hours" expires_after="2024-01-31">
+    units="hours" expires_after="2024-03-31">
   <owner>sophiechang@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -964,7 +964,7 @@
 
 <histogram
     name="History.Clusters.Backend.GetMostRecentClustersForUI.{Segment}{Source}"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
   <owner>sophiechang@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -1285,7 +1285,7 @@
 </histogram>
 
 <histogram name="History.Clusters.Backend.UpdateClusters.{Segment}" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>manukh@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -1324,7 +1324,7 @@
 
 <histogram
     name="History.Clusters.Backend.UpdateClusterTriggerability.DidUpdateClusterTriggerability{Segment}"
-    enum="Boolean" expires_after="2024-01-31">
+    enum="Boolean" expires_after="2024-03-31">
   <owner>sophiechang@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -1398,7 +1398,7 @@
 
 <histogram
     name="History.Clusters.Backend.UpdateClusterTriggerability.{Segment}"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
   <owner>manukh@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -1456,7 +1456,7 @@
 
 <histogram
     name="History.Clusters.Backend.WasClusterFiltered.{ClusterFilterReason}"
-    enum="BooleanFiltered" expires_after="2024-01-31">
+    enum="BooleanFiltered" expires_after="2024-03-31">
   <owner>mcrouse@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -1488,7 +1488,7 @@
 </histogram>
 
 <histogram name="History.Clusters.ContextClusterer.DbLatency.{Segment}"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
   <owner>sophiechang@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -1571,7 +1571,7 @@
 
 <histogram
     name="History.Clusters.ContextClusterer.VisitProcessingLatency.{Segment}"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
   <owner>sophiechang@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -1791,7 +1791,7 @@
 </histogram>
 
 <histogram name="History.Clusters.UIActions.Cluster.{ClusterAction}"
-    units="index" expires_after="2024-01-31">
+    units="index" expires_after="2024-03-31">
   <owner>mahmadi@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -1814,7 +1814,7 @@
 
 <histogram
     name="History.Clusters.UIActions.RelatedSearch.{RelatedSearchAction}"
-    units="index" expires_after="2024-01-31">
+    units="index" expires_after="2024-03-31">
   <owner>mahmadi@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -1842,7 +1842,7 @@
 </histogram>
 
 <histogram name="History.Clusters.UIActions.{VisitType}Visit.{VisitAction}"
-    units="index" expires_after="2024-01-31">
+    units="index" expires_after="2024-03-31">
   <owner>mahmadi@chromium.org</owner>
   <owner>chrome-journeys@google.com</owner>
   <component>UI&gt;Browser&gt;Journeys</component>
@@ -2589,7 +2589,7 @@
   </summary>
 </histogram>
 
-<histogram name="History.URLTableCount" units="URLs" expires_after="2024-01-14">
+<histogram name="History.URLTableCount" units="URLs" expires_after="2024-03-31">
   <owner>mpearson@chromium.org</owner>
   <owner>sky@chromium.org</owner>
   <component>UI&gt;Browser&gt;History</component>
diff --git a/tools/metrics/histograms/metadata/ios/histograms.xml b/tools/metrics/histograms/metadata/ios/histograms.xml
index b41eefe..06862e21 100644
--- a/tools/metrics/histograms/metadata/ios/histograms.xml
+++ b/tools/metrics/histograms/metadata/ios/histograms.xml
@@ -35,13 +35,31 @@
 
 <variants name="MXVersion">
   <variant name=""
-      summary="The default MXPayload, only recorded when the app version
-               number matches."/>
+      summary="Warning: This is only recorded when the current app version
+               number matches the version number for all the data received in
+               a MetricKit payload. Since MetricKit payloads are received
+               once every 24 hours, this means that payloads received within
+               24 hours of updating the app will get dropped. As a result,
+               there will be a substantial decrease in histogram volume when
+               a new app version is released, biasing the collected data
+               towards users who are slow to update, and possibly creating
+               spurious regressions or progressions. This histogram will have
+               misleading trends around release dates. The version of this
+               metric prefixed by IOS.MetricKit.IncludingMismatch does not
+               drop data this way, so will not have these spurious changes."/>
   <variant name="IncludingMismatch."
-      summary="The processed MXPayload may not match the current app's
-               version. This is very common on app updates, which would
-               otherwise lead to losing multiple days of MetricKit reports.
-               Instead, record them here."/>
+      summary="Warning: This is recorded even when the current app version
+               number doesn't match the version number for some or all of the
+               data received in a MetricKit payload. This means that data
+               reported for a particular Chrome version may actually be
+               coming from an earlier version that the user was running
+               within the previous 24 hours. Splitting this histogram by
+               version number will yield misleading results, as some data
+               attributed to be from a particular version will have been
+               actually recorded for a different version number. The version
+               of this metric that does not contain IncludingMismatch in its
+               name drops data from older versions, so is safe to split by
+               version number."/>
 </variants>
 
 <histogram name="IOS.Allocator.ShimInstalled" enum="Boolean"
@@ -320,7 +338,7 @@
 </histogram>
 
 <histogram name="IOS.CredentialExtension.IsEnabled.Startup" enum="Boolean"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>veronguyen@google.com</owner>
   <owner>tmartino@chromium.org</owner>
   <summary>
@@ -363,7 +381,7 @@
 </histogram>
 
 <histogram name="IOS.CredentialExtension.PasswordUseCount" units="count"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>rkgibson@chromium.org</owner>
   <owner>djean@chromium.org</owner>
   <summary>
@@ -441,7 +459,7 @@
 </histogram>
 
 <histogram name="IOS.CredentialExtension.StatusDidChangeTo.Startup"
-    enum="Boolean" expires_after="2024-01-28">
+    enum="Boolean" expires_after="2024-03-31">
   <owner>veronguyen@google.com</owner>
   <owner>tmartino@chromium.org</owner>
   <summary>
@@ -664,7 +682,7 @@
 </histogram>
 
 <histogram name="IOS.DesktopPasswordPromo.Shown"
-    enum="DesktopIOSPasswordPromoImpression" expires_after="2024-01-31">
+    enum="DesktopIOSPasswordPromoImpression" expires_after="2024-03-31">
   <owner>nicolasmacbeth@google.com</owner>
   <owner>bling-get-set-up@google.com</owner>
   <summary>
@@ -675,7 +693,7 @@
 </histogram>
 
 <histogram name="IOS.DesktopPasswordPromo.{Impression}.Action"
-    enum="DesktopIOSPasswordPromoAction" expires_after="2024-01-31">
+    enum="DesktopIOSPasswordPromoAction" expires_after="2024-03-31">
   <owner>nicolasmacbeth@google.com</owner>
   <owner>bling-get-set-up@google.com</owner>
   <summary>
@@ -1245,7 +1263,7 @@
 </histogram>
 
 <histogram name="IOS.MainFrameNavigationIsInLockdownMode" enum="Boolean"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>ajuma@chromium.org</owner>
   <owner>bling-fundamentals@google.com</owner>
   <summary>
@@ -1326,7 +1344,15 @@
     browser process are reported.
 
     Recorded only if user opted in for sharing diagnostic data on iOS device.
-    Note: The date the data is reported is later than the day it account for.
+    The exact percentage of users who are opted into sharing data with Apple is
+    not known, but see go/chrome-uma-metrickit-sharing-rate for an estimate.
+
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
 
     This histogram is of special interest to the chrome-analysis-team@. Do not
     change its semantics or retire it without talking to them first.
@@ -1343,7 +1369,15 @@
     aggregated). Logged when a MXMetricPayload is received (one per day).
 
     Recorded only if user opted in for sharing diagnostic data on iOS device.
-    Note: The date the data is reported is later than the day it account for.
+    The exact percentage of users who are opted into sharing data with Apple is
+    not known, but see go/chrome-uma-metrickit-sharing-rate for an estimate.
+
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
   </summary>
   <token key="MXVersion" variants="MXVersion"/>
 </histogram>
@@ -1358,7 +1392,15 @@
     day).
 
     Recorded only if user opted in for sharing diagnostic data on iOS device.
-    Note: The date the data is reported is later than the day it account for.
+    The exact percentage of users who are opted into sharing data with Apple is
+    not known, but see go/chrome-uma-metrickit-sharing-rate for an estimate.
+
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
   </summary>
   <token key="MXVersion" variants="MXVersion"/>
 </histogram>
@@ -1382,7 +1424,15 @@
     &quot;CleanExitBeacon&quot; is set when Chrome is put in the background.
 
     Recorded only if user opted in for sharing diagnostic data on iOS device.
-    Note: The date the data is reported is later than the day it account for.
+    The exact percentage of users who are opted into sharing data with Apple is
+    not known, but see go/chrome-uma-metrickit-sharing-rate for an estimate.
+
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
 
     This histogram is of special interest to the chrome-analysis-team@. Do not
     change its semantics or retire it without talking to them first.
@@ -1401,7 +1451,15 @@
     background activity like background music or picture in picture).
 
     Recorded only if user opted in for sharing diagnostic data on iOS device.
-    Note: The date the data is reported is later than the day it account for.
+    The exact percentage of users who are opted into sharing data with Apple is
+    not known, but see go/chrome-uma-metrickit-sharing-rate for an estimate.
+
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
   </summary>
   <token key="MXVersion" variants="MXVersion"/>
 </histogram>
@@ -1415,13 +1473,23 @@
     receive input. This measures startup until the same point as
     Startup.ColdStartFromProcessCreationTimeV2 but is computed by iOS in a way
     that accounts for app pre-warming. The exact adjustments made to account for
-    pre-warming are not documented by Apple. Logged when a MXMetricPayload is
-    received (one per day).
+    pre-warming are not documented by Apple. This metric only covers cold
+    starts, that is, when Chrome is not running and is then launched into the
+    foreground. It does not cover warms starts, that is, when Chrome is already
+    running in the background and is then brought into the foreground. Logged
+    when a MXMetricPayload is received (one per day).
 
     This is only recorded on iOS 16+, and recorded only if user opted in for
-    sharing diagnostic data on iOS device.
+    sharing diagnostic data on iOS device with Apple. The exact percentage of
+    users who are opted into sharing data with Apple is not known, but see
+    go/chrome-uma-metrickit-sharing-rate for an estimate.
 
-    Note: The date the data is reported is later than the day it accounts for.
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
   </summary>
   <token key="MXVersion" variants="MXVersion"/>
 </histogram>
@@ -1447,7 +1515,15 @@
     foreground.
 
     Recorded only if user opted in for sharing diagnostic data on iOS device.
-    Note: The date the data is reported is later than the day it account for.
+    The exact percentage of users who are opted into sharing data with Apple is
+    not known, but see go/chrome-uma-metrickit-sharing-rate for an estimate.
+
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
 
     This histogram is of special interest to the chrome-analysis-team@. Do not
     change its semantics or retire it without talking to them first.
@@ -1469,7 +1545,15 @@
     foreground
 
     Recorded only if user opted in for sharing diagnostic data on iOS device.
-    Note: The date the data is reported is later than the day it account for.
+    The exact percentage of users who are opted into sharing data with Apple is
+    not known, but see go/chrome-uma-metrickit-sharing-rate for an estimate.
+
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
   </summary>
   <token key="MXVersion" variants="MXVersion"/>
 </histogram>
@@ -1486,9 +1570,16 @@
     (one per day).
 
     This is only recorded on iOS 16+, and recorded only if user opted in for
-    sharing diagnostic data on iOS device.
+    sharing diagnostic data on iOS device. The exact percentage of users who are
+    opted into sharing data with Apple is not known, but see
+    go/chrome-uma-metrickit-sharing-rate for an estimate.
 
-    Note: The date the data is reported is later than the day it accounts for.
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
   </summary>
   <token key="MXVersion" variants="MXVersion"/>
 </histogram>
@@ -1508,7 +1599,15 @@
     whether this is going to be reported.
 
     Recorded only if user opted in for sharing diagnostic data on iOS device.
-    Note: The date the data is reported is later than the day it account for.
+    The exact percentage of users who are opted into sharing data with Apple is
+    not known, but see go/chrome-uma-metrickit-sharing-rate for an estimate.
+
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
   </summary>
   <token key="MXVersion" variants="MXVersion"/>
 </histogram>
@@ -1522,7 +1621,15 @@
     received (one per day).
 
     Recorded only if user opted in for sharing diagnostic data on iOS device.
-    Note: The date the data is reported is later than the day it account for.
+    The exact percentage of users who are opted into sharing data with Apple is
+    not known, but see go/chrome-uma-metrickit-sharing-rate for an estimate.
+
+    Note: Data is received from Apple once a day when Chrome is running,
+    covering the previous 24 hours as well as any older data that has not yet
+    been delivered to Chrome. This means that the date the data is reported may
+    be later than the user activity it corresponds to.
+
+    {MXVersion}
   </summary>
   <token key="MXVersion" variants="MXVersion"/>
 </histogram>
@@ -1613,7 +1720,7 @@
 </histogram>
 
 <histogram name="IOS.Omnibox.DeviceSwitcherResult.{Context}"
-    enum="OmniboxDeviceSwitcherResult" expires_after="2024-01-31">
+    enum="OmniboxDeviceSwitcherResult" expires_after="2024-03-31">
   <owner>christianxu@chromium.org</owner>
   <owner>bling-team@google.com</owner>
   <summary>
@@ -1634,7 +1741,7 @@
 </histogram>
 
 <histogram name="IOS.Omnibox.SteadyStatePositionAtStartup"
-    enum="OmniboxPositionType" expires_after="2024-01-28">
+    enum="OmniboxPositionType" expires_after="2024-03-31">
   <owner>christianxu@chromium.org</owner>
   <owner>bling-team@google.com</owner>
   <summary>
@@ -1643,7 +1750,7 @@
 </histogram>
 
 <histogram name="IOS.Omnibox.SuggestionsListScrolled.{PageClass}"
-    enum="Boolean" expires_after="2024-01-31">
+    enum="Boolean" expires_after="2024-03-31">
   <owner>christianxu@chromium.org</owner>
   <owner>stkhapugin@chromium.org</owner>
   <owner>bling-team@google.com</owner>
@@ -2063,7 +2170,7 @@
 </histogram>
 
 <histogram name="IOS.PostRestoreSignin.Choice"
-    enum="IOSPostRestoreSigninChoice" expires_after="2024-01-28">
+    enum="IOSPostRestoreSigninChoice" expires_after="2024-03-31">
   <owner>scottyoder@google.com</owner>
   <owner>bling-get-set-up@google.com</owner>
   <summary>
@@ -2072,7 +2179,7 @@
 </histogram>
 
 <histogram name="IOS.PostRestoreSignin.Displayed" enum="Boolean"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>scottyoder@google.com</owner>
   <owner>bling-get-set-up@google.com</owner>
   <summary>
@@ -2081,7 +2188,7 @@
 </histogram>
 
 <histogram name="IOS.Process.ActivePrewarm" enum="Boolean"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>justincohen@google.com</owner>
   <owner>olivierrobin@google.com</owner>
   <summary>
@@ -2812,7 +2919,7 @@
   </summary>
 </histogram>
 
-<histogram name="IOS.Snapshots.CacheSize" units="KB" expires_after="2024-01-28">
+<histogram name="IOS.Snapshots.CacheSize" units="KB" expires_after="2024-03-31">
   <owner>ajuma@chromium.org</owner>
   <owner>edchin@chromium.org</owner>
   <summary>
@@ -3010,7 +3117,7 @@
 </histogram>
 
 <histogram name="IOS.TabGrid.TabSelected.TimeSinceLastActivation" units="ms"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>gambard@chromium.org</owner>
   <owner>chromeleon@google.com</owner>
   <summary>
@@ -3066,7 +3173,7 @@
 </histogram>
 
 <histogram name="IOS.TabSwitcher.DragDropTabs"
-    enum="IOSTabSwitcherDragDropTabs" expires_after="2024-01-28">
+    enum="IOSTabSwitcherDragDropTabs" expires_after="2024-03-31">
   <owner>ewannpv@chromium.org</owner>
   <owner>gambard@chromium.org</owner>
   <owner>bling-team@google.com</owner>
@@ -3284,7 +3391,7 @@
 </histogram>
 
 <histogram name="IOS.Variations.CreateTrials.SeedExpiry"
-    enum="VariationsSeedExpiry" expires_after="2024-01-28">
+    enum="VariationsSeedExpiry" expires_after="2024-03-31">
   <owner>ginnyhuang@chromium.org</owner>
   <owner>bling-get-set-up@google.com</owner>
   <summary>
@@ -3323,7 +3430,7 @@
 </histogram>
 
 <histogram name="IOS.Variations.FirstRun.SeedFetchTime" units="ms"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>ginnyhuang@chromium.org</owner>
   <owner>bling-get-set-up@google.com</owner>
   <summary>
@@ -3418,7 +3525,7 @@
 </histogram>
 
 <histogram name="IOS.WidgetKit.Action" enum="IOSWidgetKitAction"
-    expires_after="2024-01-30">
+    expires_after="2024-03-31">
   <owner>rkgibson@google.com</owner>
   <owner>muradyan@google.com</owner>
   <summary>
@@ -3428,7 +3535,7 @@
 </histogram>
 
 <histogram name="IOS.WidgetKit.{Status}" enum="IOSWidgetKitExtensionKind"
-    expires_after="2024-01-30">
+    expires_after="2024-03-31">
   <owner>rkgibson@google.com</owner>
   <owner>muradyan@chromium.org</owner>
   <summary>
@@ -3513,7 +3620,7 @@
 </histogram>
 
 <histogram name="ManualFallback.PresentedOptions.AllPasswords"
-    units="Credentials" expires_after="2024-01-28">
+    units="Credentials" expires_after="2024-03-31">
   <owner>tmartino@chromium.org</owner>
   <owner>djean@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/media/histograms.xml b/tools/metrics/histograms/metadata/media/histograms.xml
index 7f6c4dab..b4df37b 100644
--- a/tools/metrics/histograms/metadata/media/histograms.xml
+++ b/tools/metrics/histograms/metadata/media/histograms.xml
@@ -6104,7 +6104,7 @@
 </histogram>
 
 <histogram name="Media.VideoCaptureManager.DesktopCaptureImplementationAndType"
-    enum="DesktopCaptureImplementationAndType" expires_after="2024-01-23">
+    enum="DesktopCaptureImplementationAndType" expires_after="2024-03-31">
   <owner>handellm@chromium.org</owner>
   <owner>ccameron@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/memory/histograms.xml b/tools/metrics/histograms/metadata/memory/histograms.xml
index 282b134..ef092df 100644
--- a/tools/metrics/histograms/metadata/memory/histograms.xml
+++ b/tools/metrics/histograms/metadata/memory/histograms.xml
@@ -1491,7 +1491,7 @@
 </histogram>
 
 <histogram name="Memory.NetworkService.SharedMemoryFootprint" units="MiB"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>mmenke@chromium.org</owner>
   <owner>morlovich@chromium.org</owner>
   <owner>erikchen@chromium.org</owner>
@@ -2493,7 +2493,7 @@
 </histogram>
 
 <histogram name="Memory.VmmSwap.TotalBytesWrittenInAWeek" units="MiB"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>kawasin@google.com</owner>
   <owner>sstan@google.com</owner>
   <summary>
@@ -2504,7 +2504,7 @@
 </histogram>
 
 <histogram name="Memory.VmmSwap.{VmName}.ActiveAfterEnableDuration"
-    units="Hours" expires_after="2024-01-31">
+    units="Hours" expires_after="2024-03-31">
   <owner>kawasin@google.com</owner>
   <owner>sstan@google.com</owner>
   <summary>
@@ -2518,7 +2518,7 @@
 </histogram>
 
 <histogram name="Memory.VmmSwap.{VmName}.AvgPagesInFile" units="Pages"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>kawasin@google.com</owner>
   <owner>sstan@google.com</owner>
   <summary>
@@ -2557,7 +2557,7 @@
 </histogram>
 
 <histogram name="Memory.VmmSwap.{VmName}.InactiveNoEnableDuration"
-    units="Hours" expires_after="2024-01-31">
+    units="Hours" expires_after="2024-03-31">
   <owner>kawasin@google.com</owner>
   <owner>sstan@google.com</owner>
   <summary>
@@ -2570,7 +2570,7 @@
 </histogram>
 
 <histogram name="Memory.VmmSwap.{VmName}.MinPagesInFile" units="Pages"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>kawasin@google.com</owner>
   <owner>sstan@google.com</owner>
   <summary>
@@ -2583,7 +2583,7 @@
 </histogram>
 
 <histogram name="Memory.VmmSwap.{VmName}.PageAverageDurationInFile"
-    units="Seconds" expires_after="2024-01-31">
+    units="Seconds" expires_after="2024-03-31">
   <owner>kawasin@google.com</owner>
   <owner>sstan@google.com</owner>
   <summary>
@@ -2610,7 +2610,7 @@
 </histogram>
 
 <histogram name="Memory.VmmSwap.{VmName}.State" enum="VmmSwapState"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>kawasin@google.com</owner>
   <owner>sstan@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/mobile/histograms.xml b/tools/metrics/histograms/metadata/mobile/histograms.xml
index 5ce451e..34ac645 100644
--- a/tools/metrics/histograms/metadata/mobile/histograms.xml
+++ b/tools/metrics/histograms/metadata/mobile/histograms.xml
@@ -132,7 +132,7 @@
 </histogram>
 
 <histogram name="Mobile.ContextMenu.LensWebImageProcessTime" units="ms"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>hujasonx@google.com</owner>
   <owner>lens-in-bling-team@google.com</owner>
   <summary>
@@ -1124,7 +1124,7 @@
 </histogram>
 
 <histogram name="MobileSignInPromo.NTPFeedTop.ImpressionsTilXButton"
-    units="impressions" expires_after="2024-01-28">
+    units="impressions" expires_after="2024-03-31">
   <owner>mrefaat@chromium.org</owner>
   <owner>jlebel@chromium.org</owner>
   <owner>chrome-signin-team@google.com</owner>
diff --git a/tools/metrics/histograms/metadata/navigation/histograms.xml b/tools/metrics/histograms/metadata/navigation/histograms.xml
index 4361966fb..70e93af 100644
--- a/tools/metrics/histograms/metadata/navigation/histograms.xml
+++ b/tools/metrics/histograms/metadata/navigation/histograms.xml
@@ -1721,7 +1721,7 @@
 </histogram>
 
 <histogram name="Prerender.Experimental.ActivationIPCDelay" units="ms"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>lingqi@chromium.org</owner>
   <owner>chrome-prerendering@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/net/histograms.xml b/tools/metrics/histograms/metadata/net/histograms.xml
index fa69dc4..3e65947 100644
--- a/tools/metrics/histograms/metadata/net/histograms.xml
+++ b/tools/metrics/histograms/metadata/net/histograms.xml
@@ -1456,7 +1456,7 @@
 </histogram>
 
 <histogram name="Net.DNS.ProbeSequence.ConfigChange.Success.AttemptTime"
-    units="ms" expires_after="2024-01-30">
+    units="ms" expires_after="2024-03-31">
   <owner>awillia@chromium.org</owner>
   <owner>src/net/dns/OWNERS</owner>
   <summary>
@@ -3740,7 +3740,7 @@
 </histogram>
 
 <histogram name="Net.QuicSession.NumMigrations" units="units"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>renjietang@chromium.org</owner>
   <owner>src/net/quic/OWNERS</owner>
   <summary>The number of successful migrations for a QUIC session.</summary>
@@ -4814,6 +4814,62 @@
   </summary>
 </histogram>
 
+<histogram name="Net.RestrictedCookieManager.EstimatedCookieAccessDetailsSize"
+    units="bytes" expires_after="2024-01-01">
+  <owner>vollick@google.com</owner>
+  <owner>src/net/cookies/OWNERS</owner>
+  <summary>
+    The RestrictedCookieManager batches cookie access details and, every 100ms,
+    sends these batches to clients via the OnCookiesAccessed mojo message. It is
+    possible that these cookie access details batches contain duplicates so, to
+    reduce IPC cost, we can deduplicate these details (instead, we send a count
+    along with the details). This histogram records the estimated size of the
+    non-deduplicated size if deduplication is enabled.
+
+    The URLLoader also sends cookie access details via OnCookiesAccessed, but
+    the deduplication mentioned here only applies to the batched data maintained
+    by the RestrictedCookieManager.
+  </summary>
+</histogram>
+
+<histogram
+    name="Net.RestrictedCookieManager.EstimatedDeDupedCookieAccessDetailsSize"
+    units="bytes" expires_after="2024-01-01">
+  <owner>vollick@google.com</owner>
+  <owner>src/net/cookies/OWNERS</owner>
+  <summary>
+    The RestrictedCookieManager batches cookie access details and, every 100ms,
+    sends these batches to clients via the OnCookiesAccessed mojo message. It is
+    possible that these cookie access details batches contain duplicates so, to
+    reduce IPC cost, we can deduplicate these details (instead, we send a count
+    along with the details). This histogram records the estimated size of the
+    deduplicated size if deduplication is enabled.
+
+    The URLLoader also sends cookie access details via OnCookiesAccessed, but
+    the deduplication mentioned here only applies to the batched data maintained
+    by the RestrictedCookieManager.
+  </summary>
+</histogram>
+
+<histogram
+    name="Net.RestrictedCookieManager.EstimatedDeDupedCookieAccessDetailsSizeReduction"
+    units="bytes" expires_after="2024-01-01">
+  <owner>vollick@google.com</owner>
+  <owner>src/net/cookies/OWNERS</owner>
+  <summary>
+    The RestrictedCookieManager batches cookie access details and, every 100ms,
+    sends these batches to clients via the OnCookiesAccessed mojo message. It is
+    possible that these cookie access details batches contain duplicates so, to
+    reduce IPC cost, we can deduplicate these details (instead, we send a count
+    along with the details). This histogram records the estimated size reduction
+    due to deduplication if deduplication is enabled.
+
+    The URLLoader also sends cookie access details via OnCookiesAccessed, but
+    the deduplication mentioned here only applies to the batched data maintained
+    by the RestrictedCookieManager.
+  </summary>
+</histogram>
+
 <histogram name="Net.RestrictedCookieManager.GetCookiesString.Count30Seconds"
     units="IPCs" expires_after="2024-03-03">
   <owner>carlscab@google.com</owner>
diff --git a/tools/metrics/histograms/metadata/network/histograms.xml b/tools/metrics/histograms/metadata/network/histograms.xml
index 1f18c300..d65b520 100644
--- a/tools/metrics/histograms/metadata/network/histograms.xml
+++ b/tools/metrics/histograms/metadata/network/histograms.xml
@@ -1118,7 +1118,7 @@
 </histogram>
 
 <histogram name="Network.Cellular.ESim.ProfileDiscovery.Latency" units="ms"
-    expires_after="2023-12-31">
+    expires_after="2024-03-31">
   <owner>azeemarshad@chromium.org</owner>
   <owner>cros-connectivity@google.com</owner>
   <owner>hsuregan@chromium.org</owner>
@@ -1885,7 +1885,7 @@
 </histogram>
 
 <histogram name="Network.Ethernet.Policy.OncRecommendedFieldsWorkaroundAction"
-    enum="OncRecommendedFieldsWorkaroundAction" expires_after="2024-01-31">
+    enum="OncRecommendedFieldsWorkaroundAction" expires_after="2024-03-31">
   <owner>pmarko@google.com</owner>
   <owner>suprnet@google.com</owner>
   <summary>
@@ -2575,6 +2575,17 @@
   </summary>
 </histogram>
 
+<histogram name="Network.Shill.PortalDetector.AggregateResult.{Technology}"
+    enum="PortalDetectorAggregateResult" expires_after="2023-12-31">
+  <owner>hugobenichi@google.com</owner>
+  <owner>cros-network-metrics@google.com</owner>
+  <summary>
+    Result of ChromeOS network validation aggregated over multiple attempts
+    until Internet connectivity has been validated or until disconnection.
+  </summary>
+  <token key="Technology" variants="PhysicalTechnology"/>
+</histogram>
+
 <histogram name="Network.Shill.PortalDetector.AttemptsToDisconnect.Cellular"
     units="attempts" expires_after="2024-03-10">
   <owner>stevenjb@chromium.org</owner>
@@ -2761,6 +2772,25 @@
   <token key="Technology" variants="PhysicalTechnology"/>
 </histogram>
 
+<histogram name="Network.Shill.PortalDetector.{Transition}.{Technology}"
+    units="ms" expires_after="2023-12-31">
+  <owner>hugobenichi@google.com</owner>
+  <owner>cros-network-metrics@google.com</owner>
+  <summary>
+    Total time it takes for ChromeOS network validation to find a captive portal
+    redirection or to validate Internet access starting from the initial network
+    connection (&quot;TimeToRedirect, &quot;TimeToInternet&quot;) or starting
+    from the first discovery of a captive portal redirection
+    (&quot;TimeToInternetAfterRedirect&quot;).
+  </summary>
+  <token key="Transition">
+    <variant name="TimeToInternet"/>
+    <variant name="TimeToInternetAfterRedirect"/>
+    <variant name="TimeToRedirect"/>
+  </token>
+  <token key="Technology" variants="PhysicalTechnology"/>
+</histogram>
+
 <histogram name="Network.Shill.PPPMTUValue" units="bytes"
     expires_after="2023-12-31">
   <owner>jiejiang@chromium.org</owner>
diff --git a/tools/metrics/histograms/metadata/new_tab_page/histograms.xml b/tools/metrics/histograms/metadata/new_tab_page/histograms.xml
index 30548910..4fecfd8 100644
--- a/tools/metrics/histograms/metadata/new_tab_page/histograms.xml
+++ b/tools/metrics/histograms/metadata/new_tab_page/histograms.xml
@@ -35,7 +35,7 @@
 </histogram>
 
 <histogram name="NewTabPage.ActioniOS" enum="NewTabPageActioniOS"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>justincohen@chromium.org</owner>
   <owner>gambard@chromium.org</owner>
   <summary>
@@ -702,6 +702,19 @@
   </summary>
 </histogram>
 
+<histogram name="NewTabPage.HistoryClusters.HasDiscount" enum="Boolean"
+    expires_after="2024-02-11">
+  <owner>yuezhanggg@chromium.org</owner>
+  <owner>chrome-shopping@google.com</owner>
+  <owner>chrome-desktop-ntp@google.com</owner>
+  <summary>
+    Logs whether the Cluster showing in the module contains a visible discount,
+    i.e. at least one visible visit has an associated discount. Logged when the
+    NewTabPage is rendering the enabled modules. Only logged in 1P NTP with the
+    history clusters module and Discount feature enabled.
+  </summary>
+</histogram>
+
 <histogram name="NewTabPage.HistoryClusters.ImageLoadSuccess" enum="Boolean"
     expires_after="2024-02-11">
   <owner>romanarora@chromium.org</owner>
@@ -1049,7 +1062,7 @@
 </histogram>
 
 <histogram name="NewTabPage.Modules.Disabled{Interaction}" enum="NtpModules"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>romanarora@chromium.org</owner>
   <owner>tiborg@chromium.org</owner>
   <owner>chrome-desktop-ntp@google.com</owner>
@@ -1102,7 +1115,7 @@
 </histogram>
 
 <histogram name="NewTabPage.Modules.Enabled{Interaction}" enum="NtpModules"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>romanarora@chromium.org</owner>
   <owner>tiborg@chromium.org</owner>
   <owner>chrome-desktop-ntp@google.com</owner>
@@ -1397,7 +1410,7 @@
 </histogram>
 
 <histogram name="NewTabPage.MostVisitedMigratedDefaultAppType"
-    enum="TypeOfDeletedMostVisitedApp" expires_after="2024-01-28">
+    enum="TypeOfDeletedMostVisitedApp" expires_after="2024-03-31">
   <owner>dibyapal@chromium.org</owner>
   <owner>desktop-pwas-team@google.com</owner>
   <summary>
@@ -1408,7 +1421,7 @@
 </histogram>
 
 <histogram name="NewTabPage.NumberOfTiles" units="units"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>tiborg@chromium.org</owner>
   <owner>romanarora@chromium.org</owner>
   <owner>chrome-desktop-ntp@google.com</owner>
@@ -1425,7 +1438,7 @@
 </histogram>
 
 <histogram name="NewTabPage.OneGoogleBar.RequestLatency" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>tiborg@chromium.org</owner>
   <owner>romanarora@chromium.org</owner>
   <owner>chrome-desktop-ntp@google.com</owner>
@@ -1436,7 +1449,7 @@
 </histogram>
 
 <histogram name="NewTabPage.OneGoogleBar.ShownTime" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>tiborg@chromium.org</owner>
   <owner>romanarora@chromium.org</owner>
   <owner>chrome-desktop-ntp@google.com</owner>
diff --git a/tools/metrics/histograms/metadata/omnibox/histograms.xml b/tools/metrics/histograms/metadata/omnibox/histograms.xml
index 6ae65b55..30f1116 100644
--- a/tools/metrics/histograms/metadata/omnibox/histograms.xml
+++ b/tools/metrics/histograms/metadata/omnibox/histograms.xml
@@ -1299,7 +1299,7 @@
 </histogram>
 
 <histogram name="Omnibox.NumberOfVisibleCharacters" units="characters"
-    expires_after="2023-12-24">
+    expires_after="2024-03-31">
   <owner>peilinwang@google.com</owner>
   <owner>woa-performance-bugs+jank@google.com</owner>
   <summary>
@@ -1690,7 +1690,7 @@
 </histogram>
 
 <histogram name="Omnibox.SetText.TextLength" units="characters"
-    expires_after="2023-12-24">
+    expires_after="2024-03-31">
   <owner>peilinwang@google.com</owner>
   <owner>woa-performance-bugs+jank@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/others/histograms.xml b/tools/metrics/histograms/metadata/others/histograms.xml
index 500d929..6384e675 100644
--- a/tools/metrics/histograms/metadata/others/histograms.xml
+++ b/tools/metrics/histograms/metadata/others/histograms.xml
@@ -209,7 +209,7 @@
 </histogram>
 
 <histogram name="AccessCodeCast.Discovery.AddSinkResult.Remembered"
-    enum="AccessCodeCastAddSinkResult" expires_after="2023-12-17">
+    enum="AccessCodeCastAddSinkResult" expires_after="2024-04-03">
   <owner>bzielinski@google.com</owner>
   <owner>cros-edu-eng@google.com</owner>
   <summary>
@@ -221,7 +221,7 @@
 </histogram>
 
 <histogram name="AccessCodeCast.Discovery.CastModeOnSuccess"
-    enum="AccessCodeCastCastMode" expires_after="2023-11-12">
+    enum="AccessCodeCastCastMode" expires_after="2024-04-03">
   <owner>bzielinski@google.com</owner>
   <owner>cros-edu-eng@google.com</owner>
   <summary>
@@ -323,7 +323,7 @@
 </histogram>
 
 <histogram name="AccessCodeCast.Ui.AccessCodeInputTime" units="ms"
-    expires_after="2023-11-12">
+    expires_after="2024-04-03">
   <owner>bzielinski@google.com</owner>
   <owner>cros-edu-eng@google.com</owner>
   <summary>
@@ -359,7 +359,7 @@
 </histogram>
 
 <histogram name="AccessCodeCast.Ui.DialogCloseReason"
-    enum="AccessCodeCastDialogCloseReason" expires_after="2024-01-28">
+    enum="AccessCodeCastDialogCloseReason" expires_after="2024-03-31">
   <owner>bzielinski@google.com</owner>
   <owner>cros-edu-eng@google.com</owner>
   <summary>
@@ -369,7 +369,7 @@
 </histogram>
 
 <histogram name="AccessCodeCast.Ui.DialogLoadTime" units="ms"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>bzielinski@google.com</owner>
   <owner>cros-edu-eng@google.com</owner>
   <summary>
@@ -908,7 +908,7 @@
 </histogram>
 
 <histogram name="Ads.InterestGroup.ServerAuction.EndToEndTime" units="ms"
-    expires_after="M121">
+    expires_after="2024-03-31">
   <owner>behamilton@google.com</owner>
   <owner>pauljensen@chromium.org</owner>
   <owner>privacy-sandbox-dev@chromium.org</owner>
@@ -3027,7 +3027,7 @@
 </histogram>
 
 <histogram name="ClientHints.UpdateEventCount" units="count"
-    expires_after="2023-10-31">
+    expires_after="2024-03-03">
   <owner>victortan@chromium.org</owner>
   <owner>potassium-katabolism@google.com</owner>
   <summary>
@@ -3583,7 +3583,7 @@
 </histogram>
 
 <histogram name="Conversions.AggregatableReport.NumContributionsPerReport2"
-    units="contribution" expires_after="M121">
+    units="contribution" expires_after="2024-03-31">
   <owner>linnan@chromium.org</owner>
   <owner>johnidel@chromium.org</owner>
   <owner>measurement-api-dev+metrics@google.com</owner>
@@ -3767,7 +3767,7 @@
 </histogram>
 
 <histogram name="Conversions.DebugReport.ReportRetrySucceedAggregatable"
-    enum="BooleanSuccess" expires_after="M121">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>anthonygarant@chromium.org</owner>
   <owner>johnidel@chromium.org</owner>
   <owner>measurement-api-dev+metrics@google.com</owner>
@@ -3779,7 +3779,7 @@
 </histogram>
 
 <histogram name="Conversions.DebugReport.ReportRetrySucceedEventLevel"
-    enum="BooleanSuccess" expires_after="M121">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>anthonygarant@chromium.org</owner>
   <owner>johnidel@chromium.org</owner>
   <owner>measurement-api-dev+metrics@google.com</owner>
@@ -3919,6 +3919,24 @@
   </summary>
 </histogram>
 
+<histogram name="Conversions.HeadersSize.Register{Type}" units="bytes"
+    expires_after="M121">
+  <owner>tquintanilla@chromium.org</owner>
+  <owner>linnan@chromium.org</owner>
+  <owner>measurement-api-dev+metrics@google.com</owner>
+  <summary>
+    Records the size of attribution response headers for registering sources or
+    triggers in bytes. Recorded when Attribution Response Headers are received
+    and handled.
+  </summary>
+  <token key="Type">
+    <variant name="OsSource"/>
+    <variant name="OsTrigger"/>
+    <variant name="Source"/>
+    <variant name="Trigger"/>
+  </token>
+</histogram>
+
 <histogram name="Conversions.HttpResponseOrNetErrorCodeAggregatable"
     enum="CombinedHttpResponseAndNetErrorCode" expires_after="2024-03-10">
   <owner>anthonygarant@chromium.org</owner>
@@ -4043,7 +4061,7 @@
 </histogram>
 
 <histogram name="Conversions.ReportRetrySucceedAggregatable"
-    enum="BooleanSuccess" expires_after="M121">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>anthonygarant@chromium.org</owner>
   <owner>johnidel@chromium.org</owner>
   <owner>measurement-api-dev+metrics@google.com</owner>
@@ -4334,7 +4352,7 @@
 </histogram>
 
 <histogram name="Conversions.Storage.Sql.FileSizeSourcesPerOriginLimitReached"
-    units="KB" expires_after="M121">
+    units="KB" expires_after="2024-03-31">
   <owner>tquintanilla@chromium.org</owner>
   <owner>johnidel@chromium.org</owner>
   <owner>measurement-api-dev+metrics@google.com</owner>
@@ -4347,7 +4365,7 @@
 
 <histogram
     name="Conversions.Storage.Sql.FileSizeSourcesPerOriginLimitReached.PerSource"
-    units="bytes" expires_after="M121">
+    units="bytes" expires_after="2024-03-31">
   <owner>anthonygarant@chromium.org</owner>
   <owner>johnidel@chromium.org</owner>
   <owner>measurement-api-dev+metrics@google.com</owner>
@@ -4359,7 +4377,7 @@
 </histogram>
 
 <histogram name="Conversions.Storage.Sql.InitStatus2"
-    enum="ConversionStorageSqlInitStatus" expires_after="M121">
+    enum="ConversionStorageSqlInitStatus" expires_after="2024-03-31">
   <owner>johnidel@chromium.org</owner>
   <owner>csharrison@chromium.org</owner>
   <summary>
@@ -4427,7 +4445,7 @@
 </histogram>
 
 <histogram name="Conversions.{RegistrationType}.UsesReservedKeys"
-    enum="Boolean" expires_after="M121">
+    enum="Boolean" expires_after="2024-03-31">
   <owner>anthonygarant@chromium.org</owner>
   <owner>johnidel@chromium.org</owner>
   <owner>measurement-api-dev+metrics@google.com</owner>
@@ -4445,6 +4463,21 @@
   </token>
 </histogram>
 
+<histogram name="Conversions.{ReportStatus}ReportsInDatabase" units="Reports"
+    expires_after="M121">
+  <owner>tquintanilla@chromium.org</owner>
+  <owner>apaseltiner@chromium.org</owner>
+  <owner>measurement-api-dev+metrics@google.com</owner>
+  <summary>
+    Records the number of valid/corrupted reports in a client's database.
+    Reports are scanned during database initialization.
+  </summary>
+  <token key="ReportStatus">
+    <variant name="Corrupt"/>
+    <variant name="Valid"/>
+  </token>
+</histogram>
+
 <histogram name="Conversions.{ReportType}.NetworkConnectionTypeOnFailure"
     enum="NetworkConnectionType" expires_after="2024-03-10">
   <owner>linnan@chromium.org</owner>
@@ -4462,7 +4495,7 @@
 </histogram>
 
 <histogram name="Conversions.{ReportType}.ReportRetriesTillSuccessOrFailure"
-    enum="ConversionReportSendRetryCount" expires_after="M121">
+    enum="ConversionReportSendRetryCount" expires_after="2024-03-31">
   <owner>tquintanilla@chromium.org</owner>
   <owner>johnidel@chromium.org</owner>
   <owner>measurement-api-dev+metrics@google.com</owner>
@@ -5013,7 +5046,7 @@
 </histogram>
 
 <histogram name="DemoMode.UserClicksAndPresses" units="clicks"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>llin@chromium.org</owner>
   <owner>xiqiruan@chromium.org</owner>
   <owner>yilkal@chromium.org</owner>
@@ -6688,6 +6721,19 @@
   </summary>
 </histogram>
 
+<histogram name="FirstPartySets.Initialization.SitesToClear.Count"
+    units="sites" expires_after="M129">
+  <owner>cfredric@chromium.org</owner>
+  <owner>kaustubhag@chromium.org</owner>
+  <summary>
+    Counts the number of sites whose data should be cleared during Related
+    Website Sets initialization. (Note: this doesn't record the number of sites
+    whose data *was* cleared.)
+
+    Recorded once per profile during profile login.
+  </summary>
+</histogram>
+
 <histogram name="FirstPartySets.NavigationThrottle.ResumeDelta" units="ms"
     expires_after="M124">
   <owner>shuuran@google.com</owner>
@@ -6849,7 +6895,7 @@
 </histogram>
 
 <histogram name="FirstRun.Stage" enum="FirstRunStageResult"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>tinazwang@chromium.org</owner>
   <owner>bling-get-started@google.com</owner>
   <summary>
@@ -8172,6 +8218,18 @@
   </summary>
 </histogram>
 
+<histogram name="LoadingPredictor.LcppStatCorruptedAtLearnTime" enum="Boolean"
+    expires_after="2024-02-01">
+  <owner>yyanagisawa@chromium.org</owner>
+  <owner>chrome-loading@google.com</owner>
+  <summary>
+    The status of SetLCPPNavigationHint. It is recorded when the
+    kLCPCriticalPathPredictor feature is enabled and MaybeSetLCPPNavigationHint
+    is called. It includes status on not only SetLCPPNavigation failure, but
+    also success for ease of understanding the failure ratio.
+  </summary>
+</histogram>
+
 <histogram name="LoadingPredictor.OptimizationHintsReceiveStatus"
     enum="LoadingPredictorOptimizationHintsReceiveStatus"
     expires_after="2024-03-03">
@@ -8285,6 +8343,18 @@
   </summary>
 </histogram>
 
+<histogram name="LoadingPredictor.SetLcppNavigationHint.Status"
+    enum="LcppHintStatus" expires_after="2024-02-01">
+  <owner>yyanagisawa@chromium.org</owner>
+  <owner>chrome-loading@google.com</owner>
+  <summary>
+    The status of SetLCPPNavigationHint. It is recorded when the
+    kLCPCriticalPathPredictor feature is enabled and MaybeSetLCPPNavigationHint
+    is called. It includes status on not only SetLCPPNavigation failure, but
+    also success for ease of understanding the failure ratio.
+  </summary>
+</histogram>
+
 <histogram name="LowPriorityIframes.IframeRequestPriority"
     enum="WebURLRequestPriority" expires_after="M77">
   <owner>tbansal@chromium.org</owner>
@@ -9012,7 +9082,7 @@
 </histogram>
 
 <histogram name="OSCrypt.AppBoundEncryption.Decrypt.ResultCode" enum="Hresult"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>wfh@chromium.org</owner>
   <owner>nparker@chromium.org</owner>
   <summary>
@@ -9023,7 +9093,7 @@
 </histogram>
 
 <histogram name="OSCrypt.AppBoundEncryption.Decrypt.ResultLastError"
-    enum="WinGetLastError" expires_after="2024-01-28">
+    enum="WinGetLastError" expires_after="2024-03-31">
   <owner>wfh@chromium.org</owner>
   <owner>nparker@chromium.org</owner>
   <summary>
@@ -9034,7 +9104,7 @@
 </histogram>
 
 <histogram name="OSCrypt.AppBoundEncryption.Decrypt.Time" units="ms"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>wfh@chromium.org</owner>
   <owner>nparker@chromium.org</owner>
   <summary>
@@ -9045,7 +9115,7 @@
 </histogram>
 
 <histogram name="OSCrypt.AppBoundEncryption.Encrypt.ResultCode" enum="Hresult"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>wfh@chromium.org</owner>
   <owner>nparker@chromium.org</owner>
   <summary>
@@ -9057,7 +9127,7 @@
 </histogram>
 
 <histogram name="OSCrypt.AppBoundEncryption.Encrypt.ResultLastError"
-    enum="WinGetLastError" expires_after="2024-01-28">
+    enum="WinGetLastError" expires_after="2024-03-31">
   <owner>wfh@chromium.org</owner>
   <owner>nparker@chromium.org</owner>
   <summary>
@@ -9070,7 +9140,7 @@
 </histogram>
 
 <histogram name="OSCrypt.AppBoundEncryption.Encrypt.Time" units="ms"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>wfh@chromium.org</owner>
   <owner>nparker@chromium.org</owner>
   <summary>
@@ -13488,7 +13558,7 @@
 </histogram>
 
 <histogram name="TouchScreen.MissedTOUCHEVENTF_UP" enum="BooleanHit"
-    expires_after="2023-10-03">
+    expires_after="2024-10-03">
   <owner>girard@chromium.org</owner>
   <owner>input-dev@chromium.org</owner>
   <summary>
@@ -14390,7 +14460,7 @@
 </histogram>
 
 <histogram name="WebDatabase.AutofillWebDataBackendImpl.OperationResult"
-    enum="AutofillWebDataBackendImplOperationResult" expires_after="2023-12-01">
+    enum="AutofillWebDataBackendImplOperationResult" expires_after="2024-03-31">
   <owner>battre@chromium.org</owner>
   <owner>asully@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/page/histograms.xml b/tools/metrics/histograms/metadata/page/histograms.xml
index 5380377..5d321dd 100644
--- a/tools/metrics/histograms/metadata/page/histograms.xml
+++ b/tools/metrics/histograms/metadata/page/histograms.xml
@@ -825,7 +825,7 @@
 
 <histogram
     name="PageLoad.Clients.LCPP.PaintTiming.NavigationToFirstContentfulPaint"
-    units="ms" expires_after="2024-01-29">
+    units="ms" expires_after="2024-03-31">
   <owner>kouhei@chromium.org</owner>
   <owner>
     src/third_party/blink/renderer/core/lcp_critical_path_predictor/OWNERS
@@ -839,7 +839,7 @@
 
 <histogram
     name="PageLoad.Clients.LCPP.PaintTiming.NavigationToLargestContentfulPaint"
-    units="ms" expires_after="2024-01-29">
+    units="ms" expires_after="2024-03-31">
   <owner>kouhei@chromium.org</owner>
   <owner>
     src/third_party/blink/renderer/core/lcp_critical_path_predictor/OWNERS
@@ -1112,7 +1112,7 @@
 
 <histogram
     name="PageLoad.Clients.ServiceWorker2.PaintTiming.{Timing}.{HandlerType}"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
   <owner>yyanagisawa@chromium.org</owner>
   <owner>chrome-worker@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/password/histograms.xml b/tools/metrics/histograms/metadata/password/histograms.xml
index 95d9245..34d27550 100644
--- a/tools/metrics/histograms/metadata/password/histograms.xml
+++ b/tools/metrics/histograms/metadata/password/histograms.xml
@@ -511,7 +511,7 @@
 </histogram>
 
 <histogram name="PasswordManager.AccountStorageOptInSwitchFlipped"
-    enum="Boolean" expires_after="2024-01-28">
+    enum="Boolean" expires_after="2024-03-31">
   <owner>victorvianna@google.com</owner>
   <owner>src/components/password_manager/OWNERS</owner>
   <summary>
@@ -968,7 +968,7 @@
 </histogram>
 
 <histogram name="PasswordManager.BulkCheck.InsecureCredentials.Count"
-    units="credentials" expires_after="2024-01-28">
+    units="credentials" expires_after="2024-03-31">
   <owner>eic@google.com</owner>
   <owner>noemies@google.com</owner>
   <summary>
@@ -1053,7 +1053,7 @@
 </histogram>
 
 <histogram name="PasswordManager.BulkCheck.UserAction.IOS.General"
-    enum="PasswordCheckInteractionIOSWithoutContext" expires_after="2024-01-28">
+    enum="PasswordCheckInteractionIOSWithoutContext" expires_after="2024-03-31">
   <owner>eic@google.com</owner>
   <owner>noemies@google.com</owner>
   <summary>
@@ -1455,7 +1455,7 @@
 </histogram>
 
 <histogram name="PasswordManager.FillingSuccessIOS" enum="BooleanSuccess"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>theocristea@google.com</owner>
   <owner>kazinova@google.com</owner>
   <owner>vsemeniuk@google.com</owner>
@@ -1763,7 +1763,7 @@
 </histogram>
 
 <histogram name="PasswordManager.iOS.PasswordManagerVisit" enum="Boolean"
-    expires_after="2023-12-21">
+    expires_after="2024-03-31">
   <owner>eic@google.com</owner>
   <owner>tmartino@chromium.com</owner>
   <summary>
@@ -2399,7 +2399,7 @@
 
 <histogram name="PasswordManager.PasswordMigrationWarning.SheetStateAtClosing"
     enum="PasswordMigrationWarningSheetStateAtClosing"
-    expires_after="2024-01-29">
+    expires_after="2024-03-31">
   <owner>izuzic@google.com</owner>
   <owner>ioanap@chromium.org</owner>
   <summary>
@@ -2409,7 +2409,7 @@
 </histogram>
 
 <histogram name="PasswordManager.PasswordMigrationWarning.Trigger"
-    enum="PasswordMigrationWarningTriggers" expires_after="2024-01-29">
+    enum="PasswordMigrationWarningTriggers" expires_after="2024-03-31">
   <owner>izuzic@google.com</owner>
   <owner>ioanap@chromium.org</owner>
   <summary>
@@ -2419,7 +2419,7 @@
 </histogram>
 
 <histogram name="PasswordManager.PasswordMigrationWarning.UserAction"
-    enum="PasswordMigrationWarningUserActions" expires_after="2024-01-29">
+    enum="PasswordMigrationWarningUserActions" expires_after="2024-03-31">
   <owner>izuzic@google.com</owner>
   <owner>ioanap@chromium.org</owner>
   <summary>
@@ -3177,17 +3177,6 @@
   <token key="UserSyncingType" variants="UserSyncingType"/>
 </histogram>
 
-<histogram
-    name="PasswordManager.SaveUIOnClearedPasswordChangeFormDismissalReason"
-    enum="PasswordManagerUIDismissalReason" expires_after="2023-10-22">
-  <owner>kazinova@google.com</owner>
-  <owner>khamutov@google.com</owner>
-  <summary>
-    Why was the save password UI closed on a cleared change password form?
-    Recorded when the save bubble/infobar is dismissed.
-  </summary>
-</histogram>
-
 <histogram name="PasswordManager.SaveUpdateUIDismissalReasonAndroid{Dialog}"
     enum="SaveUpdatePasswordMessageDismissReason" expires_after="2023-07-15">
   <owner>atsvirchkova@google.com</owner>
@@ -3311,7 +3300,7 @@
 </histogram>
 
 <histogram name="PasswordManager.SingleUsername.PasswordFormHadUsernameField"
-    enum="PasswordFormHadUsernameField" expires_after="2024-01-28">
+    enum="PasswordFormHadUsernameField" expires_after="2024-03-31">
   <owner>kolos@chromium.org</owner>
   <owner>shaikhitdin@google.com</owner>
   <summary>
@@ -3411,7 +3400,7 @@
 </histogram>
 
 <histogram name="PasswordManager.SuccessfulSubmissionIndicatorEvent"
-    enum="SubmissionIndicatorEvent" expires_after="2024-01-28">
+    enum="SubmissionIndicatorEvent" expires_after="2024-03-31">
   <owner>kazinova@google.com</owner>
   <owner>vasilii@chromium.org</owner>
   <summary>
@@ -3673,17 +3662,6 @@
   <summary>Why was the update password UI (bubble or infobar) closed?</summary>
 </histogram>
 
-<histogram
-    name="PasswordManager.UpdateUIOnClearedPasswordChangeFormDismissalReason"
-    enum="PasswordManagerUIDismissalReason" expires_after="2024-04-15">
-  <owner>kazinova@google.com</owner>
-  <owner>khamutov@google.com</owner>
-  <summary>
-    Why was the update password UI closed on a cleared change password form?
-    Recorded when the update bubble/infobar is dismissed.
-  </summary>
-</histogram>
-
 <histogram name="PasswordManager.UPMUnenrollmentReason"
     enum="PasswordStoreAndroidBackendAPIError" expires_after="2024-03-17">
   <owner>ioanap@chromium.org</owner>
@@ -3695,7 +3673,7 @@
 </histogram>
 
 <histogram name="PasswordManager.UPMUpdateSignInCredentialsSucces"
-    enum="Boolean" expires_after="2024-01-30">
+    enum="Boolean" expires_after="2024-03-31">
   <owner>izuzic@google.com</owner>
   <owner>ioanap@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/permissions/histograms.xml b/tools/metrics/histograms/metadata/permissions/histograms.xml
index 7c53eda..fb726bf 100644
--- a/tools/metrics/histograms/metadata/permissions/histograms.xml
+++ b/tools/metrics/histograms/metadata/permissions/histograms.xml
@@ -857,7 +857,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.Accepted.PriorIgnoreCount2" units="units"
-    expires_after="2023-10-31">
+    expires_after="2024-10-31">
   <owner>engedy@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -870,7 +870,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.AcceptedOnce" enum="PermissionRequestType"
-    expires_after="2023-10-31">
+    expires_after="2024-10-31">
   <owner>engedy@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -882,7 +882,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.AcceptedOnce.PriorDismissCount2"
-    units="units" expires_after="2023-10-31">
+    units="units" expires_after="2024-10-31">
   <owner>engedy@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -895,7 +895,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.AcceptedOnce.PriorIgnoreCount2"
-    units="units" expires_after="2023-10-31">
+    units="units" expires_after="2024-10-31">
   <owner>engedy@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -918,7 +918,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.Denied.PriorDismissCount2" units="units"
-    expires_after="2023-10-31">
+    expires_after="2024-10-31">
   <owner>engedy@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -931,7 +931,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.Denied.PriorIgnoreCount2" units="units"
-    expires_after="2023-10-31">
+    expires_after="2024-10-31">
   <owner>engedy@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -957,7 +957,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.Dismissed.PriorIgnoreCount2" units="units"
-    expires_after="2023-10-31">
+    expires_after="2024-10-31">
   <owner>engedy@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -985,7 +985,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.Ignored.PriorDismissCount2" units="units"
-    expires_after="2023-10-31">
+    expires_after="2024-10-31">
   <owner>engedy@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -998,7 +998,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.Ignored.PriorIgnoreCount2" units="units"
-    expires_after="2023-10-31">
+    expires_after="2024-10-31">
   <owner>engedy@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -1011,7 +1011,7 @@
 </histogram>
 
 <histogram name="Permissions.Prompt.Infobar.DetailsExpanded" enum="Boolean"
-    expires_after="2023-10-31">
+    expires_after="2024-10-31">
   <owner>andypaicu@chromium.org</owner>
   <owner>engedy@chromium.org</owner>
   <owner>hkamila@chromium.org</owner>
@@ -1089,7 +1089,7 @@
 
 <histogram
     name="Permissions.Prompt.{PermissionType}.{Disposition}.Ignored.DidShowBubble"
-    enum="Boolean" expires_after="2023-10-31">
+    enum="Boolean" expires_after="2024-10-31">
   <owner>elklm@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -1180,7 +1180,7 @@
 
 <histogram
     name="Permissions.Prompt.{PermissionType}.{Disposition}.{Action}.{ButtonClick}"
-    enum="Boolean" expires_after="2023-10-31">
+    enum="Boolean" expires_after="2024-10-31">
   <owner>elklm@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
@@ -1292,7 +1292,7 @@
 </histogram>
 
 <histogram name="Permissions.QuietPrompt.Preignore" enum="PermissionType"
-    expires_after="2023-11-15">
+    expires_after="2024-11-15">
   <owner>elklm@chromium.org</owner>
   <owner>src/components/permissions/PERMISSIONS_OWNERS</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/phonehub/histograms.xml b/tools/metrics/histograms/metadata/phonehub/histograms.xml
index 5a72dcc..a72c9c3 100644
--- a/tools/metrics/histograms/metadata/phonehub/histograms.xml
+++ b/tools/metrics/histograms/metadata/phonehub/histograms.xml
@@ -301,7 +301,7 @@
 </histogram>
 
 <histogram name="PhoneHub.InterstitialScreenEvent.{Screen}"
-    enum="PhoneHubInterstitialScreenEvent" expires_after="2023-12-31">
+    enum="PhoneHubInterstitialScreenEvent" expires_after="2024-03-31">
   <owner>jonmann@chromium.org</owner>
   <owner>chromeos-cross-device-eng@google.com</owner>
   <summary>Events for the given PhoneHub interstitial screen. {Screen}</summary>
diff --git a/tools/metrics/histograms/metadata/printing/histograms.xml b/tools/metrics/histograms/metadata/printing/histograms.xml
index 2a55170..02e4203 100644
--- a/tools/metrics/histograms/metadata/printing/histograms.xml
+++ b/tools/metrics/histograms/metadata/printing/histograms.xml
@@ -376,7 +376,7 @@
 </histogram>
 
 <histogram name="Printing.CUPS.SavedPrintersCount" units="printers"
-    expires_after="2024-1-27">
+    expires_after="2024-03-31">
   <owner>gavinwill@chromium.org</owner>
   <owner>cros-peripherals@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/renderer/histograms.xml b/tools/metrics/histograms/metadata/renderer/histograms.xml
index 5e4c8ab..6d8b9b1 100644
--- a/tools/metrics/histograms/metadata/renderer/histograms.xml
+++ b/tools/metrics/histograms/metadata/renderer/histograms.xml
@@ -470,7 +470,7 @@
 </histogram>
 
 <histogram name="Renderer.PaintPreview.Capture.MainFrameBlinkCaptureDuration"
-    units="ms" expires_after="2024-01-14">
+    units="ms" expires_after="2024-04-04">
   <owner>ckitagawa@chromium.org</owner>
   <owner>fredmello@chromium.org</owner>
   <owner>chrome-fdt@google.com</owner>
@@ -481,7 +481,7 @@
 </histogram>
 
 <histogram name="Renderer.PaintPreview.Capture.MainFrameSuccess"
-    enum="BooleanSuccess" expires_after="2023-11-12">
+    enum="BooleanSuccess" expires_after="2024-04-04">
   <owner>ckitagawa@chromium.org</owner>
   <owner>fredmello@chromium.org</owner>
   <owner>chrome-fdt@google.com</owner>
@@ -491,7 +491,7 @@
 </histogram>
 
 <histogram name="Renderer.PaintPreview.Capture.SubframeBlinkCaptureDuration"
-    units="ms" expires_after="2023-11-12">
+    units="ms" expires_after="2024-04-04">
   <owner>ckitagawa@chromium.org</owner>
   <owner>fredmello@chromium.org</owner>
   <owner>chrome-fdt@google.com</owner>
@@ -502,7 +502,7 @@
 </histogram>
 
 <histogram name="Renderer.PaintPreview.Capture.SubframeSuccess"
-    enum="BooleanSuccess" expires_after="2023-11-12">
+    enum="BooleanSuccess" expires_after="2024-04-04">
   <owner>ckitagawa@chromium.org</owner>
   <owner>fredmello@chromium.org</owner>
   <owner>chrome-fdt@google.com</owner>
diff --git a/tools/metrics/histograms/metadata/renderer4/histograms.xml b/tools/metrics/histograms/metadata/renderer4/histograms.xml
index 208e9887..8a6f4fe 100644
--- a/tools/metrics/histograms/metadata/renderer4/histograms.xml
+++ b/tools/metrics/histograms/metadata/renderer4/histograms.xml
@@ -77,7 +77,7 @@
 </histogram>
 
 <histogram name="Renderer4.GpuImageDecodeState.FirstLockWasted"
-    enum="BooleanWasted" expires_after="2024-01-28">
+    enum="BooleanWasted" expires_after="2024-03-31">
   <owner>vmpstr@chromium.org</owner>
   <owner>thiabaud@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/safe_browsing/OWNERS b/tools/metrics/histograms/metadata/safe_browsing/OWNERS
index 21c63f77..65b95a9c 100644
--- a/tools/metrics/histograms/metadata/safe_browsing/OWNERS
+++ b/tools/metrics/histograms/metadata/safe_browsing/OWNERS
@@ -3,5 +3,6 @@
 # Prefer sending CLs to the owners listed below.
 # Use chromium-metrics-reviews@google.com as a backup.
 drubery@chromium.org
+jacastro@chromium.org
 thefrog@chromium.org
 xinghuilu@chromium.org
diff --git a/tools/metrics/histograms/metadata/safe_browsing/histograms.xml b/tools/metrics/histograms/metadata/safe_browsing/histograms.xml
index b361c11..6409f5d 100644
--- a/tools/metrics/histograms/metadata/safe_browsing/histograms.xml
+++ b/tools/metrics/histograms/metadata/safe_browsing/histograms.xml
@@ -586,7 +586,7 @@
 </histogram>
 
 <histogram name="SafeBrowsing.EsbPromotionFlow.IphShown"
-    enum="SafeBrowsingReferralMethod" expires_after="2024-01-26">
+    enum="SafeBrowsingReferralMethod" expires_after="2024-03-31">
   <owner>awado@google.com</owner>
   <owner>chrome-safebrowsing-alerts@google.com</owner>
   <summary>
@@ -1274,17 +1274,6 @@
   </token>
 </histogram>
 
-<histogram name="SafeBrowsing.HPRT.Network.Result"
-    enum="CombinedHttpResponseAndNetErrorCode" expires_after="2024-02-04">
-  <owner>thefrog@chromium.org</owner>
-  <owner>chrome-counter-abuse-alerts@google.com</owner>
-  <summary>
-    Response or error codes from SafeBrowsing hash-prefix real-time lookups.
-    Logged on each resource check for which a lookup request is sent to the
-    server.
-  </summary>
-</histogram>
-
 <histogram name="SafeBrowsing.HPRT.Network.Result.WhenEnteringBackoff"
     enum="CombinedHttpResponseAndNetErrorCode" expires_after="2024-03-17">
   <owner>thefrog@chromium.org</owner>
@@ -1307,6 +1296,26 @@
   </summary>
 </histogram>
 
+<histogram name="SafeBrowsing.HPRT.Network.{ResponseSource}Result"
+    enum="CombinedHttpResponseAndNetErrorCode" expires_after="2024-02-04">
+  <owner>thefrog@chromium.org</owner>
+  <owner>chrome-counter-abuse-alerts@google.com</owner>
+  <summary>
+    Response or error codes from SafeBrowsing hash-prefix real-time lookups that
+    are obtained from {ResponseSource}. Logged on each resource check for which
+    a lookup request is sent to the server. Not logged if the response is not
+    from {ResponseSource}.
+  </summary>
+  <token key="ResponseSource">
+    <variant name=""
+        summary="aggregated OHTTP handler callback or direct fetch"/>
+    <variant name="InnerResponse"
+        summary="inner OHTTP response (Safe Browsing)"/>
+    <variant name="NetError" summary="internal OHTTP handler net error"/>
+    <variant name="OuterResponse" summary="outer OHTTP response (proxy)"/>
+  </token>
+</histogram>
+
 <histogram name="SafeBrowsing.HPRT.OhttpKeyService.BackoffState"
     enum="BooleanEnabled" expires_after="2024-02-04">
   <owner>xinghuilu@chromium.org</owner>
@@ -2479,17 +2488,6 @@
   </summary>
 </histogram>
 
-<histogram name="SafeBrowsing.TailoredSecurityUnconsentedMessageDismissReason"
-    enum="MessageDismissReason" expires_after="2023-11-11">
-  <owner>jacastro@chromium.org</owner>
-  <owner>chrome-counter-abuse-alerts@google.com</owner>
-  <summary>
-    Logs the specific reason a message was dismissed when a signed-in,
-    non-syncing user changes their account tailored security setting and
-    dismisses the corresponding message.
-  </summary>
-</histogram>
-
 <histogram name="SafeBrowsing.TailoredSecurityUnconsentedModalOutcome"
     enum="SafeBrowsingTailoredSecurityOutcome" expires_after="2024-02-04">
   <owner>jacastro@chromium.org</owner>
diff --git a/tools/metrics/histograms/metadata/sb_client/histograms.xml b/tools/metrics/histograms/metadata/sb_client/histograms.xml
index a53c9c6..a33124f 100644
--- a/tools/metrics/histograms/metadata/sb_client/histograms.xml
+++ b/tools/metrics/histograms/metadata/sb_client/histograms.xml
@@ -318,7 +318,7 @@
 
 <histogram
     name="SBClientDownload.SafeDownloadOpenedLatencyByContentType.{DownloadContent}"
-    units="ms" expires_after="2023-12-14">
+    units="ms" expires_after="2024-03-31">
   <owner>xinghuilu@chromium.org</owner>
   <owner>chrome-counter-abuse-alerts@google.com</owner>
   <summary>
@@ -804,7 +804,7 @@
 </histogram>
 
 <histogram name="SBClientPhishing.RTLookupForceRequest"
-    enum="BooleanForceRequest" expires_after="2024-01-28">
+    enum="BooleanForceRequest" expires_after="2024-03-31">
   <owner>andysjlim@chromium.org</owner>
   <owner>chrome-counter-abuse-alerts@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/security/histograms.xml b/tools/metrics/histograms/metadata/security/histograms.xml
index 50461919..38594be 100644
--- a/tools/metrics/histograms/metadata/security/histograms.xml
+++ b/tools/metrics/histograms/metadata/security/histograms.xml
@@ -172,7 +172,7 @@
 </histogram>
 
 <histogram name="Security.HttpsFirstMode.InterstitialReason"
-    enum="HttpsFirstModeInterstitialReason" expires_after="2024-01-14">
+    enum="HttpsFirstModeInterstitialReason" expires_after="2024-03-31">
   <owner>meacer@chromium.org</owner>
   <owner>trusty-transport@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/segmentation_platform/histograms.xml b/tools/metrics/histograms/metadata/segmentation_platform/histograms.xml
index c0cdfc3..2ba8305 100644
--- a/tools/metrics/histograms/metadata/segmentation_platform/histograms.xml
+++ b/tools/metrics/histograms/metadata/segmentation_platform/histograms.xml
@@ -349,7 +349,7 @@
 </histogram>
 
 <histogram name="SegmentationPlatform.Init.CreationToInitializationLatency"
-    units="ms" expires_after="2024-01-28">
+    units="ms" expires_after="2024-03-31">
   <owner>ssid@chromium.org</owner>
   <owner>chrome-segmentation-platform@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/session/histograms.xml b/tools/metrics/histograms/metadata/session/histograms.xml
index 1beea3b..67169f92 100644
--- a/tools/metrics/histograms/metadata/session/histograms.xml
+++ b/tools/metrics/histograms/metadata/session/histograms.xml
@@ -72,7 +72,7 @@
 </histogram>
 
 <histogram name="Session.OpenedTabCounts" units="operations"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>rohitrao@chromium.org</owner>
   <owner>marq@chromium.org</owner>
   <summary>
@@ -888,7 +888,7 @@
 </histogram>
 
 <histogram name="Session.WebStates.NativeRestoreHasFetchers"
-    enum="BooleanHasFetchers" expires_after="2024-01-28">
+    enum="BooleanHasFetchers" expires_after="2024-03-31">
   <owner>ajuma@chromium.org</owner>
   <owner>michaeldo@chromium.org</owner>
   <summary>
@@ -909,7 +909,7 @@
 </histogram>
 
 <histogram name="Session.WebStates.NativeRestoreSessionFromCache"
-    enum="BooleanSuccess" expires_after="2024-01-28">
+    enum="BooleanSuccess" expires_after="2024-03-31">
   <owner>justincohen@chromium.org</owner>
   <owner>ajuma@chromium.org</owner>
   <summary>
@@ -920,7 +920,7 @@
 </histogram>
 
 <histogram name="Session.WebStates.NativeRestoreSessionFromCacheHasData"
-    enum="BooleanHasData" expires_after="2024-01-28">
+    enum="BooleanHasData" expires_after="2024-03-31">
   <owner>ajuma@chromium.org</owner>
   <owner>michaeldo@chromium.org</owner>
   <summary>
@@ -931,7 +931,7 @@
 </histogram>
 
 <histogram name="Session.WebStates.NativeRestoreSessionHasData"
-    enum="BooleanHasData" expires_after="2024-01-28">
+    enum="BooleanHasData" expires_after="2024-03-31">
   <owner>ajuma@chromium.org</owner>
   <owner>michaeldo@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/settings/histograms.xml b/tools/metrics/histograms/metadata/settings/histograms.xml
index c0b8516d..705c9ab2 100644
--- a/tools/metrics/histograms/metadata/settings/histograms.xml
+++ b/tools/metrics/histograms/metadata/settings/histograms.xml
@@ -326,7 +326,7 @@
 </histogram>
 
 <histogram name="Settings.PrivacyElementInteractions"
-    enum="SettingsPrivacyElementInteractions" expires_after="2024-01-31">
+    enum="SettingsPrivacyElementInteractions" expires_after="2024-03-31">
   <owner>harrisonsean@chromium.org</owner>
   <owner>msramek@chromium.org</owner>
   <owner>sauski@chromium.org</owner>
@@ -348,7 +348,7 @@
 </histogram>
 
 <histogram name="Settings.PrivacyGuide.EntryExit"
-    enum="SettingsPrivacyGuideInteractions" expires_after="2024-01-31">
+    enum="SettingsPrivacyGuideInteractions" expires_after="2024-03-31">
   <owner>harrisonsean@chromium.org</owner>
   <owner>rainhard@chromium.org</owner>
   <owner>chrome-privacy-controls@google.com</owner>
@@ -359,7 +359,7 @@
 </histogram>
 
 <histogram name="Settings.PrivacyGuide.FlowLength" units="steps"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>rainhard@chromium.org</owner>
   <owner>aisulu@chromium.org</owner>
   <owner>chrome-privacy-controls@google.com</owner>
@@ -371,7 +371,7 @@
 </histogram>
 
 <histogram name="Settings.PrivacyGuide.NextNavigation"
-    enum="SettingsPrivacyGuideInteractions" expires_after="2024-01-31">
+    enum="SettingsPrivacyGuideInteractions" expires_after="2024-03-31">
   <owner>harrisonsean@chromium.org</owner>
   <owner>rainhard@chromium.org</owner>
   <owner>chrome-privacy-controls@google.com</owner>
@@ -394,7 +394,7 @@
 
 <histogram name="Settings.PrivacyGuide.StepsEligibleAndReached"
     enum="SettingsPrivacyGuideStepsEligibleAndReached"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>rainhard@chromium.org</owner>
   <owner>aisulu@chromium.org</owner>
   <owner>chrome-privacy-controls@google.com</owner>
@@ -515,7 +515,7 @@
 </histogram>
 
 <histogram name="Settings.PrivacySandbox.InvalidTopicIdLocalized" units="units"
-    expires_after="M121">
+    expires_after="2024-03-31">
   <owner>sauski@google.com</owner>
   <owner>chrome-privacy-controls@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/sharing/histograms.xml b/tools/metrics/histograms/metadata/sharing/histograms.xml
index 7ad413d..a5db9b5 100644
--- a/tools/metrics/histograms/metadata/sharing/histograms.xml
+++ b/tools/metrics/histograms/metadata/sharing/histograms.xml
@@ -170,7 +170,7 @@
 </histogram>
 
 <histogram name="Sharing.QRCodeGeneration.Duration.BytesToQrPixels2"
-    units="microseconds" expires_after="2023-11-12">
+    units="microseconds" expires_after="2024-03-17">
   <owner>danakj@chromium.org</owner>
   <owner>lukasza@chromium.org</owner>
   <owner>petewil@chromium.org</owner>
diff --git a/tools/metrics/histograms/metadata/signin/histograms.xml b/tools/metrics/histograms/metadata/signin/histograms.xml
index 669de99e..2f60e323 100644
--- a/tools/metrics/histograms/metadata/signin/histograms.xml
+++ b/tools/metrics/histograms/metadata/signin/histograms.xml
@@ -279,7 +279,7 @@
 </histogram>
 
 <histogram name="Signin.AccountTracker.SeedAccountInfo.IsAccountIdEmpty"
-    enum="BooleanEmpty" expires_after="2023-12-31">
+    enum="BooleanEmpty" expires_after="2024-03-31">
   <owner>msarda@chromium.org</owner>
   <owner>sinhak@chromium.org</owner>
   <owner>chrome-signin-team@google.com</owner>
@@ -827,7 +827,7 @@
 </histogram>
 
 <histogram name="Signin.IOSDeviceRestoreSignedInState"
-    enum="IOSDeviceRestoreSignedinState" expires_after="2024-01-28">
+    enum="IOSDeviceRestoreSignedinState" expires_after="2024-03-31">
   <owner>jlebel@chromium.org</owner>
   <owner>chrome-signin-team@google.com</owner>
   <summary>
@@ -852,7 +852,7 @@
 </histogram>
 
 <histogram name="Signin.IOSNumberOfDeviceAccounts" units="accounts"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>jlebel@chromium.org</owner>
   <owner>msarda@chromium.org</owner>
   <owner>chrome-signin-team@google.com</owner>
@@ -1586,6 +1586,21 @@
   </summary>
 </histogram>
 
+<histogram name="Signin.SyncOptIn.PreSyncConfirmationLatency" units="ms"
+    expires_after="2024-02-01">
+  <owner>ljjlee@google.com</owner>
+  <owner>chrome-signin-team@google.com</owner>
+  <summary>
+    Records the time taken to determine whether the user should be presented the
+    sync consent screen (or another screen such as the sync disabled screen).
+    This only includes the time that has passed from the latest sync-related
+    user input to measure the user-perceivable delay.
+
+    This metric is short-term and is intended to measure the impact of waiting
+    for additional user information prior to displaying this screen.
+  </summary>
+</histogram>
+
 <histogram name="Signin.SyncOptIn.Started" enum="SigninAccessPoint"
     expires_after="2024-02-20">
   <owner>bsazonov@chromium.org</owner>
@@ -1673,7 +1688,7 @@
 </histogram>
 
 <histogram name="Signin.TransactionalReauthUserAction"
-    enum="SigninReauthUserAction" expires_after="2024-01-28">
+    enum="SigninReauthUserAction" expires_after="2024-03-31">
 <!-- Name completed by histogram_suffixes
 name="TransactionalReauthEntryPoint" -->
 
diff --git a/tools/metrics/histograms/metadata/stability/histograms.xml b/tools/metrics/histograms/metadata/stability/histograms.xml
index 7669e9c..a4ff786 100644
--- a/tools/metrics/histograms/metadata/stability/histograms.xml
+++ b/tools/metrics/histograms/metadata/stability/histograms.xml
@@ -550,7 +550,7 @@
 </histogram>
 
 <histogram name="Stability.MobileSessionShutdownType2"
-    enum="MobileSessionShutdownType" expires_after="2024-01-28">
+    enum="MobileSessionShutdownType" expires_after="2024-03-31">
   <owner>justincohen@chromium.org</owner>
   <owner>ajuma@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/storage/histograms.xml b/tools/metrics/histograms/metadata/storage/histograms.xml
index 6d3eb8d..55da541 100644
--- a/tools/metrics/histograms/metadata/storage/histograms.xml
+++ b/tools/metrics/histograms/metadata/storage/histograms.xml
@@ -631,7 +631,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Database.Error" enum="SqliteErrorCode"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -657,7 +657,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Database.FileBacked.FileSize.KB"
-    units="KB" expires_after="2024-01-31">
+    units="KB" expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -742,7 +742,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Database.FileBacked.NumEntries.Total"
-    units="Entries" expires_after="2024-01-31">
+    units="Entries" expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -755,7 +755,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Database.FileBacked.NumOrigins"
-    units="Origins" expires_after="2024-01-31">
+    units="Origins" expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -768,7 +768,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Database.IsFileBacked"
-    units="BooleanIsFileBacked" expires_after="2024-01-31">
+    units="BooleanIsFileBacked" expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -780,7 +780,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Document.Timing.AddModule" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -836,7 +836,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Document.Timing.Run" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -850,7 +850,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Document.Timing.Run.ExecutedInWorklet"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -863,7 +863,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Document.Timing.SelectURL" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -878,7 +878,7 @@
 
 <histogram
     name="Storage.SharedStorage.Document.Timing.SelectURL.ExecutedInWorklet"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -894,7 +894,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Document.Timing.Set" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -908,7 +908,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.OnShutdown.NumSqlErrors" units="Errors"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -997,7 +997,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Worklet.NumPerPage"
-    units="WorkletsCreated" expires_after="2024-01-31">
+    units="WorkletsCreated" expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -1071,7 +1071,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Worklet.Timing.Get" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -1086,7 +1086,7 @@
 
 <histogram
     name="Storage.SharedStorage.Worklet.Timing.KeepAliveEndedDueToOperationsFinished.KeepAliveDuration"
-    units="ms" expires_after="2024-01-31">
+    units="ms" expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
@@ -1143,7 +1143,7 @@
 </histogram>
 
 <histogram name="Storage.SharedStorage.Worklet.Timing.Set" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>cammie@chromium.org</owner>
   <owner>yaoxia@chromium.org</owner>
   <owner>chrome-ads-histograms@google.com</owner>
diff --git a/tools/metrics/histograms/metadata/sync/histograms.xml b/tools/metrics/histograms/metadata/sync/histograms.xml
index 52fd7d8..be7d6e91 100644
--- a/tools/metrics/histograms/metadata/sync/histograms.xml
+++ b/tools/metrics/histograms/metadata/sync/histograms.xml
@@ -216,7 +216,7 @@
 </histogram>
 
 <histogram name="Sync.BookmarksGUIDDuplicates" enum="BookmarksGUIDDuplicates"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>mastiz@chromium.org</owner>
   <owner>rushans@google.com</owner>
   <component>Services&gt;Sync</component>
@@ -1380,7 +1380,7 @@
 </histogram>
 
 <histogram name="Sync.SyncablePrefValueChanged" enum="SyncablePref"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>ankushkush@google.com</owner>
   <owner>treib@chromium.org</owner>
   <component>Services&gt;Sync</component>
@@ -1391,7 +1391,7 @@
 </histogram>
 
 <histogram name="Sync.SyncableServiceStartTime{SyncModelType}" units="ms"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>ankushkush@google.com</owner>
   <owner>treib@chromium.org</owner>
   <component>Services&gt;Sync</component>
diff --git a/tools/metrics/histograms/metadata/tab/histograms.xml b/tools/metrics/histograms/metadata/tab/histograms.xml
index f37bbbcb..bdb1b73 100644
--- a/tools/metrics/histograms/metadata/tab/histograms.xml
+++ b/tools/metrics/histograms/metadata/tab/histograms.xml
@@ -353,7 +353,7 @@
 </histogram>
 
 <histogram name="Tab.Preview.TimeToStoreAfterTabSwitch" units="ms"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>dfried@chromium.org</owner>
   <owner>collinbaker@chromium.org</owner>
   <summary>
@@ -395,7 +395,7 @@
 </histogram>
 
 <histogram name="Tab.RendererTermination.AliveRenderersCount" units="renderers"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>ajuma@chromium.org</owner>
   <owner>bling-fundamentals@google.com</owner>
   <summary>
@@ -458,7 +458,7 @@
 </histogram>
 
 <histogram name="Tab.StateAtRendererTermination" enum="TabForegroundState"
-    expires_after="2024-01-28">
+    expires_after="2024-03-31">
   <owner>gambard@chromium.org</owner>
   <owner>olivierrobin@chromium.org</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/translate/histograms.xml b/tools/metrics/histograms/metadata/translate/histograms.xml
index ce6f898b..f6e3fc8 100644
--- a/tools/metrics/histograms/metadata/translate/histograms.xml
+++ b/tools/metrics/histograms/metadata/translate/histograms.xml
@@ -191,7 +191,7 @@
 </histogram>
 
 <histogram name="Translate.LanguageDetection.TFLiteModelEvaluationDuration"
-    units="ms" expires_after="2024-01-28">
+    units="ms" expires_after="2024-03-31">
   <owner>rajendrant@chromium.org</owner>
   <owner>mcrouse@chromium.org</owner>
   <owner>chrome-language@google.com</owner>
diff --git a/tools/metrics/histograms/metadata/uma/histograms.xml b/tools/metrics/histograms/metadata/uma/histograms.xml
index 182153c8..94b1acd 100644
--- a/tools/metrics/histograms/metadata/uma/histograms.xml
+++ b/tools/metrics/histograms/metadata/uma/histograms.xml
@@ -1059,7 +1059,7 @@
 </histogram>
 
 <histogram name="UMA.TruncatedEvents.UserAction" units="events"
-    expires_after="2024-03-24">
+    expires_after="2024-03-31">
   <owner>rkaplow@chromium.org</owner>
   <owner>src/base/metrics/OWNERS</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/update_engine/histograms.xml b/tools/metrics/histograms/metadata/update_engine/histograms.xml
index 97808bf..b63a001 100644
--- a/tools/metrics/histograms/metadata/update_engine/histograms.xml
+++ b/tools/metrics/histograms/metadata/update_engine/histograms.xml
@@ -568,7 +568,7 @@
 </histogram>
 
 <histogram name="UpdateEngine.Rollback.Result" enum="BooleanSuccess"
-    expires_after="2024-01-01">
+    expires_after="2024-03-31">
   <owner>kimjae@chromium.org</owner>
   <owner>chromeos-core-services@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/views/histograms.xml b/tools/metrics/histograms/metadata/views/histograms.xml
index 1ae29dd..8359b16 100644
--- a/tools/metrics/histograms/metadata/views/histograms.xml
+++ b/tools/metrics/histograms/metadata/views/histograms.xml
@@ -24,6 +24,16 @@
 
 <variants name="BubbleName">
   <variant name="All" summary="Aggregated metrics for all bubbles"/>
+  <variant name="DownloadBubbleContentsView"
+      summary="Aggregated metrics DownloadBubbleContentsView bubbles"/>
+  <variant name="ExtensionsMenuView"
+      summary="Aggregated metrics for ExtensionsMenuView bubbles"/>
+  <variant name="PageInfoBubbleViewBase"
+      summary="Aggregated metrics for PageInfoBubbleViewBase bubbles"/>
+  <variant name="PermissionPromptBaseView"
+      summary="Aggregated metrics for PermissionPromptBaseView bubbles"/>
+  <variant name="ProfileMenuViewBase"
+      summary="Aggregated metrics for ProfileMenuViewBase bubbles"/>
 </variants>
 
 <histogram name="Bubble.{BubbleName}.CloseReason" enum="WidgetClosedReason"
diff --git a/tools/metrics/histograms/metadata/virtualization/histograms.xml b/tools/metrics/histograms/metadata/virtualization/histograms.xml
index 6aaf251..3985f74 100644
--- a/tools/metrics/histograms/metadata/virtualization/histograms.xml
+++ b/tools/metrics/histograms/metadata/virtualization/histograms.xml
@@ -85,7 +85,7 @@
 </histogram>
 
 <histogram name="Virtualization.{Name}.StartDuration" units="Milliseconds"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>abhishekbh@google.com</owner>
   <owner>uekawa@google.com</owner>
   <summary>
@@ -97,7 +97,7 @@
 </histogram>
 
 <histogram name="Virtualization.{Name}.StopDuration" units="Milliseconds"
-    expires_after="2024-01-31">
+    expires_after="2024-03-31">
   <owner>abhishekbh@google.com</owner>
   <owner>uekawa@google.com</owner>
   <summary>
diff --git a/tools/metrics/histograms/metadata/web_audio/histograms.xml b/tools/metrics/histograms/metadata/web_audio/histograms.xml
index fcf9d53..cdb1300 100644
--- a/tools/metrics/histograms/metadata/web_audio/histograms.xml
+++ b/tools/metrics/histograms/metadata/web_audio/histograms.xml
@@ -44,7 +44,7 @@
 </histogram>
 
 <histogram name="WebAudio.AudioBuffer.SampleRate384kHz" units="Hz"
-    expires_after="2023-10-15">
+    expires_after="2023-12-01">
   <owner>hongchan@chromium.org</owner>
   <owner>mjwilson@chromium.org</owner>
   <owner>src/third_party/blink/renderer/modules/webaudio/OWNERS</owner>
diff --git a/tools/metrics/histograms/metadata/webapps/histograms.xml b/tools/metrics/histograms/metadata/webapps/histograms.xml
index c7249195..9cd74105 100644
--- a/tools/metrics/histograms/metadata/webapps/histograms.xml
+++ b/tools/metrics/histograms/metadata/webapps/histograms.xml
@@ -491,6 +491,46 @@
   </summary>
 </histogram>
 
+<histogram name="WebApp.GeneratedIconFix.AttemptCount" units="attempts"
+    expires_after="2024-06-01">
+  <owner>alancutter@chromium.org</owner>
+  <owner>desktop-pwas-team@google.com</owner>
+  <summary>
+    Records the number of generated icon fixes already attempted for each web
+    app that had an icon fix scheduled at start up. Recorded at start up.
+  </summary>
+</histogram>
+
+<histogram name="WebApp.GeneratedIconFix.Result" enum="GeneratedIconFixResult"
+    expires_after="2024-06-01">
+  <owner>alancutter@chromium.org</owner>
+  <owner>desktop-pwas-team@google.com</owner>
+  <summary>
+    Records the result of attempting to fix a web app's generated icon. Recorded
+    during start up and for all follow up daily retry events.
+  </summary>
+</histogram>
+
+<histogram name="WebApp.GeneratedIconFix.ScheduleDecision"
+    enum="GeneratedIconFixScheduleDecision" expires_after="2024-06-01">
+  <owner>alancutter@chromium.org</owner>
+  <owner>desktop-pwas-team@google.com</owner>
+  <summary>
+    Records the decision made for whether to fix a web app's generated icon.
+    Recorded during start up and for all follow up daily retry events.
+  </summary>
+</histogram>
+
+<histogram name="WebApp.GeneratedIconFix.StartUpAttemptCount"
+    units="start up attempts" expires_after="2024-06-01">
+  <owner>alancutter@chromium.org</owner>
+  <owner>desktop-pwas-team@google.com</owner>
+  <summary>
+    Records the number of background generated icon fix attempts initiated
+    during start up. Recorded at start up.
+  </summary>
+</histogram>
+
 <histogram name="WebApp.Icon.AppsWithEmptyDownloadedIconSizes" units="web apps"
     expires_after="2024-02-04">
   <owner>alancutter@chromium.org</owner>
@@ -689,7 +729,7 @@
 </histogram>
 
 <histogram name="WebApp.IconDownloader.Result"
-    enum="WebAppIconDownloaderResult" expires_after="2024-01-14">
+    enum="WebAppIconDownloaderResult" expires_after="2024-03-31">
   <owner>dmurph@chromium.org</owner>
   <owner>desktop-pwas-team@google.com</owner>
   <summary>
diff --git a/tools/perf/core/perfetto_binary_roller/binary_deps.json b/tools/perf/core/perfetto_binary_roller/binary_deps.json
index a1db57b..3f5e24b1 100644
--- a/tools/perf/core/perfetto_binary_roller/binary_deps.json
+++ b/tools/perf/core/perfetto_binary_roller/binary_deps.json
@@ -1,16 +1,16 @@
 {
     "trace_processor_shell": {
         "linux_arm64": {
-            "hash": "5225dddda98c1258201ff3af665e0422494addbc",
-            "full_remote_path": "perfetto-luci-artifacts/v37.0/linux-arm64/trace_processor_shell"
+            "hash": "2d2f28c56bb2ad780032c6ab02f6c43920b93cbf",
+            "full_remote_path": "perfetto-luci-artifacts/ca65f5ea7a77e8b81c7cbf600ee531f0ae6907a1/linux-arm64/trace_processor_shell"
         },
         "win": {
-            "hash": "60cb6e43c3291d02db4bf38c3109666490008701",
-            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/win/d44dbe4ad2af5f2148e8a879bca8aa6dd6b10dfa/trace_processor_shell.exe"
+            "hash": "764f973327f191f7f0dd3810586d0ba53910ca9a",
+            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/win/8e5b8483f3d6b3d7b9dfa0a7407a89ebbc1c24e5/trace_processor_shell.exe"
         },
         "linux_arm": {
-            "hash": "4ad0dc8eeae3ad92d6a1da2f1653a81fb9e3c4c1",
-            "full_remote_path": "perfetto-luci-artifacts/v37.0/linux-arm/trace_processor_shell"
+            "hash": "430eac9e040147e934ec4e73f0af301d1045cf5f",
+            "full_remote_path": "perfetto-luci-artifacts/ca65f5ea7a77e8b81c7cbf600ee531f0ae6907a1/linux-arm/trace_processor_shell"
         },
         "mac": {
             "hash": "23db28cb6ee6df58c2c6249293a14f64c6ac842d",
@@ -21,8 +21,8 @@
             "full_remote_path": "perfetto-luci-artifacts/v35.0/mac-arm64/trace_processor_shell"
         },
         "linux": {
-            "hash": "16c7d555ccae66af2329886e494e6907c99a367a",
-            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/linux/d44dbe4ad2af5f2148e8a879bca8aa6dd6b10dfa/trace_processor_shell"
+            "hash": "7bc7d016c6af8eeede3050b5274d45265ec4ffc4",
+            "full_remote_path": "chromium-telemetry/perfetto_binaries/trace_processor_shell/linux/8e5b8483f3d6b3d7b9dfa0a7407a89ebbc1c24e5/trace_processor_shell"
         }
     },
     "power_profile.sql": {
diff --git a/tools/perf/expectations.config b/tools/perf/expectations.config
index fd47c26..56d001f 100644
--- a/tools/perf/expectations.config
+++ b/tools/perf/expectations.config
@@ -51,12 +51,6 @@
 crbug.com/966613 [ android-pixel-2 ] blink_perf.parser/query-selector-all-class-deep.html [ Skip ]
 crbug.com/966613 [ android-pixel-2 ] blink_perf.parser/query-selector-all-deep.html [ Skip ]
 crbug.com/966613 [ android-pixel-2 ] blink_perf.parser/query-selector-all-id-deep.html [ Skip ]
-crbug.com/1477958 blink_perf.parser/declarative-shadow-dom.html [ Skip ]
-
-# Benchmark: blink_perf.shadow_dom
-crbug.com/1477958 blink_perf.shadow_dom/imperative-shadow-dom-overhead.html [ Skip ]
-crbug.com/1477958 blink_perf.shadow_dom/shadow-dom-overhead-iframe.html [ Skip ]
-crbug.com/1477958 blink_perf.shadow_dom/shadow-dom-overhead.html [ Skip ]
 
 # Benchmark: blink_perf.svg
 crbug.com/846061 [ win ] blink_perf.svg/SierpinskiCarpet.html [ Skip ]
@@ -94,6 +88,15 @@
 crbug.com/1452148 [ win-laptop ] desktop_ui/tab_search:scroll_up_and_down:2020 [ Skip ]
 crbug.com/1452148 [ win-laptop ] desktop_ui/tab_search:top50:loading:2020 [ Skip ]
 crbug.com/1452148 [ win-laptop ] desktop_ui/webui_tab_strip:top10:loading:2020 [ Skip ]
+crbug.com/1337486 [ linux ] desktop_ui/tab_search:scroll_up_and_down:2020 [ Skip ]
+crbug.com/1337486 [ linux ] desktop_ui/tab_search:top10:2020 [ Skip ]
+crbug.com/1337486 [ win ] desktop_ui/tab_search:100_recently_closed [ Skip ]
+crbug.com/1337486 [ win ] desktop_ui/tab_search:50_recently_closed [ Skip ]
+crbug.com/1337486 [ win ] desktop_ui/tab_search:scroll_up_and_down:2020 [ Skip ]
+crbug.com/1337486 [ win ] desktop_ui/tab_search:top50:2020 [ Skip ]
+crbug.com/1337486 [ win ] desktop_ui/tab_search:top50:loading:2020 [ Skip ]
+crbug.com/1337486 [ win ] desktop_ui/webui_tab_strip:top10:2020 [ Skip ]
+crbug.com/1337486 [ win ] desktop_ui/webui_tab_strip:top10:loading:2020 [ Skip ]
 
 # Benchmark: blink_perf.webcodecs
 crbug.com/1300680 [ android ] blink_perf.webcodecs/software-video-encoding.html [ Skip ]
diff --git a/tools/perf/page_sets/desktop_ui/tab_search_story.py b/tools/perf/page_sets/desktop_ui/tab_search_story.py
index dd8d302..acfb269 100644
--- a/tools/perf/page_sets/desktop_ui/tab_search_story.py
+++ b/tools/perf/page_sets/desktop_ui/tab_search_story.py
@@ -347,5 +347,7 @@
 
 
 SCROLL_ELEMENT_FUNCTION = '''
-document.querySelector('tab-search-app').shadowRoot.getElementById('tabsList')
+document.querySelector('tab-search-app').shadowRoot
+        .querySelector('tab-search-page').shadowRoot
+        .getElementById('tabsList')
 '''
diff --git a/tools/resources/svgo.config.js b/tools/resources/svgo.config.js
index f53f5b1..25926bc0 100644
--- a/tools/resources/svgo.config.js
+++ b/tools/resources/svgo.config.js
@@ -20,7 +20,7 @@
           // This plugin strips 'unused' IDs, however they may be used in
           // another file to embed an external SVG via <use>. This setting keeps
           // all IDs that start with "EXPORT_".
-          cleanupIDs: {
+          cleanupIds: {
             preservePrefixes: ["EXPORT_"],
           },
         },
diff --git a/tools/resources/svgo_presubmit_test.py b/tools/resources/svgo_presubmit_test.py
index ea527f0..c6b3cfd 100755
--- a/tools/resources/svgo_presubmit_test.py
+++ b/tools/resources/svgo_presubmit_test.py
@@ -16,8 +16,8 @@
 from PRESUBMIT_test_mocks import MockInputApi, MockOutputApi, MockFile
 
 _OPTIMIZED_SVG = (
-    b'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" ' +
-    b'id="EXPORT_preserved_id" viewBox="0 0 24 24" fill="#757575"><path ' +
+    b'<svg xmlns="http://www.w3.org/2000/svg" id="EXPORT_preserved_id" ' +
+    b'width="24" height="24" fill="#757575" viewBox="0 0 24 24"><path ' +
     b'd="M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 ' +
     b'2-2V8c0-1.1-.9-2-2-2h-8l-2-2z"/></svg>')
 
diff --git a/tools/rust/build_rust.py b/tools/rust/build_rust.py
index abe864c..cec533f 100755
--- a/tools/rust/build_rust.py
+++ b/tools/rust/build_rust.py
@@ -91,6 +91,8 @@
     # https://crbug.com/1479875 This fails on Mac. It relates to the large code
     # model which we don't use, so suppress it for now.
     os.path.join('tests', 'ui', 'thread-local', 'thread-local-issue-37508.rs'),
+    # https://crbug.com/1486137 Fails on Mac. Probably not critical.
+    os.path.join('tests', 'ui', 'abi', 'stack-probes-lto.rs'),
 ]
 
 CLANG_SCRIPTS_DIR = os.path.join(CHROMIUM_DIR, 'tools', 'clang', 'scripts')
diff --git a/tools/rust/update_rust.py b/tools/rust/update_rust.py
index 0e81553..f766bb2b 100755
--- a/tools/rust/update_rust.py
+++ b/tools/rust/update_rust.py
@@ -36,7 +36,7 @@
 # In the case that a Rust roll fails and you want to roll Clang alone, reset
 # this back to its previous value _AND_ set `OVERRIDE_CLANG_REVISION` below
 # to the `CLANG_REVISION` that was in place before the roll.
-RUST_REVISION = 'c0583a0221c28f01a7bdbc01464baf22f7c6d4a8'
+RUST_REVISION = '36aab8df0ab8a76f1c4f95ce8becefdd8a6fe526'
 RUST_SUB_REVISION = 1
 
 # If not None, this overrides the `CLANG_REVISION` in
diff --git a/tools/traffic_annotation/DIR_METADATA b/tools/traffic_annotation/DIR_METADATA
new file mode 100644
index 0000000..dfd3ad8
--- /dev/null
+++ b/tools/traffic_annotation/DIR_METADATA
@@ -0,0 +1,4 @@
+monorail {
+  component: "Enterprise>TrafficAnnotations"
+}
+team_email: "chromium-enterprise@chromium.org"
\ No newline at end of file
diff --git a/tools/typescript/definitions/autofill_private.d.ts b/tools/typescript/definitions/autofill_private.d.ts
index 9138a042..718a462 100644
--- a/tools/typescript/definitions/autofill_private.d.ts
+++ b/tools/typescript/definitions/autofill_private.d.ts
@@ -170,6 +170,7 @@
 
       export interface CreditCardEntry {
         guid?: string;
+        instrumentId?: string;
         name?: string;
         cardNumber?: string;
         expirationMonth?: string;
diff --git a/tools/typescript/definitions/input_method_private.d.ts b/tools/typescript/definitions/input_method_private.d.ts
index 212dad19..c99a049 100644
--- a/tools/typescript/definitions/input_method_private.d.ts
+++ b/tools/typescript/definitions/input_method_private.d.ts
@@ -10,12 +10,24 @@
 declare global {
   export namespace chrome {
     export namespace inputMethodPrivate {
+      export enum LanguagePackStatus {
+        UNKNOWN = 'unknown',
+        NOT_INSTALLED = 'notInstalled',
+        IN_PROGRESS = 'inProgress',
+        INSTALLED = 'installed',
+        ERROR_OTHER = 'errorOther',
+        ERROR_NEEDS_REBOOT = 'errorNeedsReboot',
+      }
+
       export function getCurrentInputMethod(): Promise<string>;
       export function setCurrentInputMethod(inputMethodId: string):
           Promise<void>;
 
       export function openOptionsPage(id: string): void;
 
+      export function getLanguagePackStatus(inputMethodId: string):
+          Promise<LanguagePackStatus>;
+
       export const onChanged: ChromeEvent<(newInputMethodId: string) => void>;
     }
   }