From: uazo Date: Tue, 25 Jan 2022 12:22:52 +0000 Subject: Disable all predictors code Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- chrome/browser/BUILD.gn | 4 +--- .../preloading_model_keyed_service.cc | 3 +++ .../preloading_model_keyed_service_factory.cc | 4 +--- .../optimization_guide/chrome_hints_manager.cc | 1 + .../model_validator_keyed_service.cc | 6 +++++- .../optimization_guide_keyed_service.cc | 1 - chrome/browser/permissions/BUILD.gn | 2 -- .../permissions/chrome_permissions_client.cc | 2 -- .../prediction_model_handler_provider.cc | 2 +- .../predictors/autocomplete_action_predictor.cc | 2 ++ .../predictors/loading_predictor_config.cc | 4 ++-- chrome/browser/predictors/predictors_features.cc | 3 +-- .../search_prefetch/field_trial_settings.cc | 4 ++++ .../search_prefetch_url_loader_interceptor.cc | 1 + .../chrome_browser_main_extra_parts_profiles.cc | 1 - chrome/browser/safe_browsing/BUILD.gn | 1 - ...fication_content_detection_service_factory.cc | 5 +++++ chrome/browser/ui/tab_helpers.cc | 1 - .../read_anything/read_aloud_app_model.cc | 16 ++++++++++++++-- .../read_anything/read_aloud_app_model.h | 9 ++++++++- .../read_anything_app_controller.cc | 10 ++++++++++ .../read_anything/read_anything_app_controller.h | 4 ++++ chrome/utility/BUILD.gn | 2 +- chrome/utility/services.cc | 8 -------- components/BUILD.gn | 2 +- .../autofill_optimization_guide.cc | 5 +++-- .../omnibox/browser/autocomplete_controller.cc | 4 ++++ .../omnibox/browser/base_search_provider.cc | 4 ++-- .../optimization_guide/core/hints_fetcher.cc | 1 + .../optimization_guide/core/hints_manager.cc | 5 +++++ .../core/optimization_guide_features.cc | 15 +++++++++------ .../core/prediction_model_download_manager.cc | 6 ++++-- .../core/prediction_model_fetcher_impl.cc | 1 + components/optimization_guide/features.gni | 3 +-- .../core/page_content_annotations_features.cc | 4 ++++ .../page_content_annotations_model_manager.cc | 1 + .../notification_content_detection/BUILD.gn | 7 +++++++ components/safe_browsing/core/common/features.cc | 1 + .../service_worker_main_resource_loader.cc | 1 + .../Disable-all-predictors-code.inc | 2 ++ .../Disable-all-predictors-code.inc | 1 + .../Disable-all-predictors-code.inc | 1 + .../features_cc/Disable-all-predictors-code.inc | 3 +++ .../features_cc/Disable-all-predictors-code.inc | 1 + .../features_cc/Disable-all-predictors-code.inc | 1 + .../features_cc/Disable-all-predictors-code.inc | 2 ++ services/webnn/features.gni | 2 +- .../core/html/parser/html_document_parser.cc | 1 + .../document_speculation_rules.cc | 1 + .../platform/runtime_enabled_features.json5 | 2 +- 50 files changed, 124 insertions(+), 49 deletions(-) create mode 100644 cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/components/permissions/features_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/net/base/features_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/third_party/blink/common/features_cc/Disable-all-predictors-code.inc diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn @@ -775,8 +775,6 @@ static_library("browser") { "navigation_predictor/navigation_predictor_keyed_service_factory.h", "navigation_predictor/navigation_predictor_metrics_document_data.cc", "navigation_predictor/navigation_predictor_metrics_document_data.h", - "navigation_predictor/navigation_predictor_preconnect_client.cc", - "navigation_predictor/navigation_predictor_preconnect_client.h", "navigation_predictor/preloading_model_keyed_service.cc", "navigation_predictor/preloading_model_keyed_service.h", "navigation_predictor/preloading_model_keyed_service_factory.cc", @@ -2343,7 +2341,7 @@ static_library("browser") { "//components/resources", "//components/safe_browsing/content/browser", "//components/safe_browsing/content/browser:safe_browsing_service", - "//components/safe_browsing/content/browser/notification_content_detection", + "//components/safe_browsing/content/browser/notification_content_detection:constants", "//components/safe_browsing/content/browser/password_protection", "//components/safe_browsing/content/browser/web_ui", "//components/safe_browsing/content/common/proto:download_file_types_proto", diff --git a/chrome/browser/navigation_predictor/preloading_model_keyed_service.cc b/chrome/browser/navigation_predictor/preloading_model_keyed_service.cc --- a/chrome/browser/navigation_predictor/preloading_model_keyed_service.cc +++ b/chrome/browser/navigation_predictor/preloading_model_keyed_service.cc @@ -11,6 +11,7 @@ #include "chrome/browser/navigation_predictor/preloading_model_handler.h" #endif +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) namespace { // The model takes all of its inputs as floats, so this is a convenience @@ -28,6 +29,7 @@ constexpr float ToInput(base::TimeDelta val) { static_assert(1.0f == ToInput(true)); } // namespace +#endif PreloadingModelKeyedService::Inputs::Inputs() = default; PreloadingModelKeyedService::Inputs::Inputs(const Inputs& other) = default; @@ -37,6 +39,7 @@ PreloadingModelKeyedService::Inputs::operator=(const Inputs& other) = default; PreloadingModelKeyedService::PreloadingModelKeyedService( OptimizationGuideKeyedService* optimization_guide_keyed_service) { #if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#error BUILD_WITH_TFLITE_LIB must be disabled auto* model_provider = static_cast( optimization_guide_keyed_service); diff --git a/chrome/browser/navigation_predictor/preloading_model_keyed_service_factory.cc b/chrome/browser/navigation_predictor/preloading_model_keyed_service_factory.cc --- a/chrome/browser/navigation_predictor/preloading_model_keyed_service_factory.cc +++ b/chrome/browser/navigation_predictor/preloading_model_keyed_service_factory.cc @@ -42,7 +42,5 @@ std::unique_ptr blink::features::kPreloadingHeuristicsMLModel)) { return nullptr; } - auto* profile = Profile::FromBrowserContext(context); - return std::make_unique( - OptimizationGuideKeyedServiceFactory::GetForProfile(profile)); + return nullptr; } diff --git a/chrome/browser/optimization_guide/chrome_hints_manager.cc b/chrome/browser/optimization_guide/chrome_hints_manager.cc --- a/chrome/browser/optimization_guide/chrome_hints_manager.cc +++ b/chrome/browser/optimization_guide/chrome_hints_manager.cc @@ -25,6 +25,7 @@ namespace { // Returns true if we can make a request for hints for |prediction|. bool IsAllowedToFetchForNavigationPrediction( const NavigationPredictorKeyedService::Prediction& prediction) { + if ((true)) return false; if (prediction.prediction_source() != NavigationPredictorKeyedService::PredictionSource:: kAnchorElementsParsedFromWebPage) { diff --git a/chrome/browser/optimization_guide/model_validator_keyed_service.cc b/chrome/browser/optimization_guide/model_validator_keyed_service.cc --- a/chrome/browser/optimization_guide/model_validator_keyed_service.cc +++ b/chrome/browser/optimization_guide/model_validator_keyed_service.cc @@ -67,13 +67,13 @@ namespace optimization_guide { ModelValidatorKeyedService::ModelValidatorKeyedService(Profile* profile) : profile_(profile) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) DCHECK(ShouldStartModelValidator()); auto* opt_guide_service = OptimizationGuideKeyedServiceFactory::GetForProfile(profile); if (!opt_guide_service) { return; } -#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) if (switches::ShouldValidateModel()) { // Create the validator object which will get destroyed when the model // load is complete. @@ -134,6 +134,7 @@ void ModelValidatorKeyedService::OnPrimaryAccountChanged( void ModelValidatorKeyedService::StartModelExecutionValidation() { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) auto* opt_guide_service = OptimizationGuideKeyedServiceFactory::GetForProfile(profile_); if (!opt_guide_service) { @@ -152,6 +153,7 @@ void ModelValidatorKeyedService::StartModelExecutionValidation() { /*execution_timeout=*/std::nullopt, base::BindOnce(&ModelValidatorKeyedService::OnModelExecuteResponse, weak_ptr_factory_.GetWeakPtr())); +#endif } void ModelValidatorKeyedService::StartOnDeviceModelExecutionValidation( @@ -169,6 +171,7 @@ void ModelValidatorKeyedService::StartOnDeviceModelExecutionValidation( void ModelValidatorKeyedService::PerformOnDeviceModelExecutionValidation( std::unique_ptr input) { +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); auto* opt_guide_service = OptimizationGuideKeyedServiceFactory::GetForProfile(profile_); @@ -219,6 +222,7 @@ void ModelValidatorKeyedService::ExecuteModel( *metadata, base::BindRepeating( &ModelValidatorKeyedService::OnDeviceModelExecuteResponse, weak_ptr_factory_.GetWeakPtr(), std::move(request))); +#endif } void ModelValidatorKeyedService::OnDeviceModelExecuteResponse( diff --git a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc --- a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc +++ b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc @@ -516,7 +516,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel( void OptimizationGuideKeyedService::RegisterOptimizationTypes( const std::vector& optimization_types) { - hints_manager_->RegisterOptimizationTypes(optimization_types); } optimization_guide::OptimizationGuideDecision diff --git a/chrome/browser/permissions/BUILD.gn b/chrome/browser/permissions/BUILD.gn --- a/chrome/browser/permissions/BUILD.gn +++ b/chrome/browser/permissions/BUILD.gn @@ -40,8 +40,6 @@ source_set("permissions") { "permission_revocation_request.h", "permissions_aiv1_handler.cc", "permissions_aiv1_handler.h", - "prediction_based_permission_ui_selector.cc", - "prediction_based_permission_ui_selector.h", "prediction_model_handler_provider.cc", "prediction_model_handler_provider.h", "prediction_service_factory.cc", diff --git a/chrome/browser/permissions/chrome_permissions_client.cc b/chrome/browser/permissions/chrome_permissions_client.cc --- a/chrome/browser/permissions/chrome_permissions_client.cc +++ b/chrome/browser/permissions/chrome_permissions_client.cc @@ -428,8 +428,6 @@ ChromePermissionsClient::CreatePermissionUiSelectors( #endif selectors.emplace_back(std::make_unique( Profile::FromBrowserContext(browser_context))); - selectors.emplace_back(std::make_unique( - Profile::FromBrowserContext(browser_context))); return selectors; } diff --git a/chrome/browser/permissions/prediction_model_handler_provider.cc b/chrome/browser/permissions/prediction_model_handler_provider.cc --- a/chrome/browser/permissions/prediction_model_handler_provider.cc +++ b/chrome/browser/permissions/prediction_model_handler_provider.cc @@ -13,10 +13,10 @@ #include "chrome/browser/permissions/permissions_aiv1_handler.h" #include "components/optimization_guide/core/optimization_guide_model_provider.h" #include "components/permissions/features.h" -#include "components/permissions/prediction_service/permissions_aiv3_handler.h" #include "components/permissions/request_type.h" #if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#include "components/permissions/prediction_service/permissions_aiv3_handler.h" #include "components/permissions/prediction_service/prediction_model_handler.h" #endif // BUILDFLAG(BUILD_WITH_TFLITE_LIB) diff --git a/chrome/browser/predictors/autocomplete_action_predictor.cc b/chrome/browser/predictors/autocomplete_action_predictor.cc --- a/chrome/browser/predictors/autocomplete_action_predictor.cc +++ b/chrome/browser/predictors/autocomplete_action_predictor.cc @@ -210,6 +210,8 @@ void AutocompleteActionPredictor::StartPrerendering( SetIsNavigationInDomainCallback(preloading_data); + if ((true)) return; // was kOmniboxTriggerForPrerender2 + // Create new PreloadingAttempt and pass all the values corresponding to this // prerendering attempt for Prerender. content::PreloadingAttempt* preloading_attempt = diff --git a/chrome/browser/predictors/loading_predictor_config.cc b/chrome/browser/predictors/loading_predictor_config.cc --- a/chrome/browser/predictors/loading_predictor_config.cc +++ b/chrome/browser/predictors/loading_predictor_config.cc @@ -13,8 +13,8 @@ namespace predictors { bool IsLoadingPredictorEnabled(Profile* profile) { - // Disabled for off-the-record. Policy choice, not a technical limitation. - return profile && !profile->IsOffTheRecord(); + // Disabled for all profiles + return false; } bool IsPreconnectAllowed(Profile* profile) { diff --git a/chrome/browser/predictors/predictors_features.cc b/chrome/browser/predictors/predictors_features.cc --- a/chrome/browser/predictors/predictors_features.cc +++ b/chrome/browser/predictors/predictors_features.cc @@ -12,8 +12,7 @@ namespace features { namespace { constexpr base::FeatureState kFeatureEnabledOnlyOnAndroid = - BUILDFLAG(IS_ANDROID) ? base::FEATURE_ENABLED_BY_DEFAULT - : base::FEATURE_DISABLED_BY_DEFAULT; + base::FEATURE_DISABLED_BY_DEFAULT; } // namespace diff --git a/chrome/browser/preloading/prefetch/search_prefetch/field_trial_settings.cc b/chrome/browser/preloading/prefetch/search_prefetch/field_trial_settings.cc --- a/chrome/browser/preloading/prefetch/search_prefetch/field_trial_settings.cc +++ b/chrome/browser/preloading/prefetch/search_prefetch/field_trial_settings.cc @@ -146,3 +146,7 @@ const base::FeatureParam kSuppressesSearchPrefetchOnSlowNetworkThreshold{ &kSuppressesSearchPrefetchOnSlowNetwork, "slow_network_threshold_for_search_prefetch", base::Milliseconds(208)}; + +SET_CROMITE_FEATURE_DISABLED(kSearchPrefetchServicePrefetching); +SET_CROMITE_FEATURE_DISABLED(kSearchPrefetchWithNoVarySearchDiskCache); +SET_CROMITE_FEATURE_DISABLED(kSearchNavigationPrefetch); diff --git a/chrome/browser/preloading/prefetch/search_prefetch/search_prefetch_url_loader_interceptor.cc b/chrome/browser/preloading/prefetch/search_prefetch/search_prefetch_url_loader_interceptor.cc --- a/chrome/browser/preloading/prefetch/search_prefetch/search_prefetch_url_loader_interceptor.cc +++ b/chrome/browser/preloading/prefetch/search_prefetch/search_prefetch_url_loader_interceptor.cc @@ -85,6 +85,7 @@ SearchPrefetchURLLoader::RequestHandler SearchPrefetchURLLoaderInterceptor::MaybeCreateLoaderForRequest( const network::ResourceRequest& tentative_resource_request, content::FrameTreeNodeId frame_tree_node_id) { + if ((true)) return {}; // Do not intercept non-main frame navigations. if (!tentative_resource_request.is_outermost_main_frame) { // Use the is_outermost_main_frame flag instead of obtaining the diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc @@ -1177,7 +1177,6 @@ void ChromeBrowserMainExtraPartsProfiles:: base::FeatureList::IsEnabled( permissions::features::kPermissionOnDeviceGeolocationPredictions) || base::FeatureList::IsEnabled(permissions::features::kPermissionsAIv1)) { - PredictionModelHandlerProviderFactory::GetInstance(); } PredictionServiceFactory::GetInstance(); predictors::AutocompleteActionPredictorFactory::GetInstance(); diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn --- a/chrome/browser/safe_browsing/BUILD.gn +++ b/chrome/browser/safe_browsing/BUILD.gn @@ -47,7 +47,6 @@ static_library("safe_browsing") { "//components/resources:components_resources_grit", "//components/safe_browsing:buildflags", "//components/safe_browsing/content/browser", - "//components/safe_browsing/content/browser/notification_content_detection:notification_content_detection", "//components/safe_browsing/content/browser/triggers:suspicious_site_trigger", "//components/safe_browsing/content/browser/web_ui", "//components/safe_browsing/core/browser", diff --git a/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc b/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc --- a/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc +++ b/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc @@ -15,6 +15,7 @@ #include "components/safe_browsing/content/browser/notification_content_detection/notification_content_detection_service.h" #include "components/safe_browsing/core/browser/db/database_manager.h" #include "components/safe_browsing/core/common/features.h" +#include "components/optimization_guide/machine_learning_tflite_buildflags.h" #include "content/public/browser/browser_context.h" namespace safe_browsing { @@ -85,6 +86,7 @@ NotificationContentDetectionServiceFactory:: content::BrowserContext* context) const { CHECK(opt_guide); CHECK(context); +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) auto database_manager = g_browser_process->safe_browsing_service()->database_manager(); scoped_refptr background_task_runner = @@ -92,6 +94,9 @@ NotificationContentDetectionServiceFactory:: {base::MayBlock(), base::TaskPriority::BEST_EFFORT}); return std::make_unique( opt_guide, background_task_runner, database_manager, context); +#else + return nullptr; +#endif } } // namespace safe_browsing diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc --- a/chrome/browser/ui/tab_helpers.cc +++ b/chrome/browser/ui/tab_helpers.cc @@ -444,7 +444,6 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { } MixedContentSettingsTabHelper::CreateForWebContents(web_contents); NavigationMetricsRecorder::CreateForWebContents(web_contents); - NavigationPredictorPreconnectClient::CreateForWebContents(web_contents); OpenerHeuristicService::Get(web_contents->GetBrowserContext()); if (optimization_guide::features::IsOptimizationHintsEnabled()) { OptimizationGuideWebContentsObserver::CreateForWebContents(web_contents); diff --git a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.cc b/chrome/renderer/accessibility/read_anything/read_aloud_app_model.cc --- a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.cc +++ b/chrome/renderer/accessibility/read_anything/read_aloud_app_model.cc @@ -16,7 +16,9 @@ #include "base/task/task_traits.h" #include "base/task/thread_pool.h" #include "base/values.h" +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) #include "chrome/renderer/accessibility/phrase_segmentation/dependency_parser_model.h" +#endif #include "chrome/renderer/accessibility/phrase_segmentation/dependency_tree.h" #include "chrome/renderer/accessibility/phrase_segmentation/phrase_segmenter.h" #include "chrome/renderer/accessibility/phrase_segmentation/token_boundaries.h" @@ -26,6 +28,7 @@ namespace { +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) // Returns the dependency parser model for this renderer process. DependencyParserModel& GetDependencyParserModel_() { static base::NoDestructor instance; @@ -38,6 +41,7 @@ std::vector GetDependencyHeads(base::span input) { ? dependency_parser_model.GetDependencyHeads(input) : std::vector(); } +#endif } // namespace @@ -153,10 +157,13 @@ void ReadAloudAppModel::PreprocessTextForSpeech( } } +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) DependencyParserModel& ReadAloudAppModel::GetDependencyParserModel() { return GetDependencyParserModel_(); } +#endif +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) void ReadAloudAppModel::CalculatePhrases( a11y::ReadAloudCurrentGranularity& granularity) { if (!features::IsReadAnythingReadAloudPhraseHighlightingEnabled()) { @@ -213,19 +220,23 @@ void ReadAloudAppModel::CalculatePhrases( base::BindOnce(&ReadAloudAppModel::UpdatePhraseBoundaries, weak_ptr_factory_.GetWeakPtr(), phrase_tokens)); } +#endif -static const Strategy kPhraseStrategy = Strategy::kWords; -static const int kPhraseStrategyParameter = 5; +[[maybe_unused]] static const Strategy kPhraseStrategy = Strategy::kWords; +[[maybe_unused]] static const int kPhraseStrategyParameter = 5; void ReadAloudAppModel::StartPhraseCalculation() { if (processed_granularities_on_current_page_.size() > 0) { current_phrase_calculation_index_ = 0; +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) CalculatePhrases(processed_granularities_on_current_page_[0]); +#endif } } void ReadAloudAppModel::UpdatePhraseBoundaries(std::vector tokens, std::vector heads) { +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) // Reset the phrase calculation flag, so that the next phrase calculation can // be scheduled, if needed. is_calculating_phrases = false; @@ -287,6 +298,7 @@ void ReadAloudAppModel::UpdatePhraseBoundaries(std::vector tokens, current_phrase_calculation_index_ = -1; LOG(WARNING) << "All phrases calculated!"; } +#endif } // TODO(crbug.com/40927698): Update to use AXRange to better handle multiple diff --git a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.h b/chrome/renderer/accessibility/read_anything/read_aloud_app_model.h --- a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.h +++ b/chrome/renderer/accessibility/read_anything/read_aloud_app_model.h @@ -8,7 +8,10 @@ #include "base/metrics/single_sample_metrics.h" #include "base/values.h" #include "chrome/common/read_anything/read_anything.mojom.h" +#include "components/optimization_guide/machine_learning_tflite_buildflags.h" +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) #include "chrome/renderer/accessibility/phrase_segmentation/dependency_parser_model.h" +#endif #include "chrome/renderer/accessibility/read_anything/read_aloud_traversal_utils.h" #include "ui/accessibility/ax_node_position.h" @@ -116,8 +119,10 @@ class ReadAloudAppModel { bool is_docs, const std::set* current_nodes); +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) // Get the dependency parsing model for this renderer process. DependencyParserModel& GetDependencyParserModel(); +#endif // Increments the processed_granularity_index_, updating ReadAloud's state of // the current granularity to refer to the next granularity. The current @@ -274,9 +279,11 @@ class ReadAloudAppModel { // still needs to be read. bool NoValidTextRemainingInCurrentNode(bool is_pdf, bool is_docs) const; +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) // Asynchronously segment the given granularity into phrases. Once the phrases // are calculated, `UpdatePhraseBoundaries` will be called. void CalculatePhrases(a11y::ReadAloudCurrentGranularity& granularity); +#endif // Once the phrase segmentation has completed for a given sentence, update the // granularity with the phrase boundaries, and calculate phrases for the next @@ -344,7 +351,7 @@ class ReadAloudAppModel { // Whether a phrase calculation for a sentence is currently underway. (We // do not initiate a second calculation before the first has completed.) - bool is_calculating_phrases = false; + [[maybe_unused]] bool is_calculating_phrases = false; // Which sentence (index into `processed_granularities_on_current_page`) is // currently being processed for phrases. -1 if none. diff --git a/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc b/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc --- a/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc +++ b/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc @@ -31,7 +31,9 @@ #include "build/build_config.h" #include "chrome/common/read_anything/read_anything_util.h" #include "chrome/renderer/accessibility/ax_tree_distiller.h" +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) #include "chrome/renderer/accessibility/phrase_segmentation/dependency_parser_model.h" +#endif #include "chrome/renderer/accessibility/read_anything/read_aloud_traversal_utils.h" #include "chrome/renderer/accessibility/read_anything/read_anything_app_model.h" #include "chrome/renderer/accessibility/read_anything/read_anything_node_utils.h" @@ -1589,6 +1591,7 @@ void ReadAnythingAppController::OnConnected() { render_frame()->GetBrowserInterfaceBroker().GetInterface( std::move(page_handler_factory_receiver)); +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) // Get the dependency parser model used by phrase-based highlighting. if (read_aloud_model_.GetDependencyParserModel().IsAvailable()) { return; @@ -1597,6 +1600,7 @@ void ReadAnythingAppController::OnConnected() { page_handler_->GetDependencyParserModel( base::BindOnce(&ReadAnythingAppController::UpdateDependencyParserModel, weak_ptr_factory_.GetWeakPtr())); +#endif } void ReadAnythingAppController::OnCopy() const { @@ -1828,8 +1832,10 @@ std::vector ReadAnythingAppController::GetCurrentText() { } void ReadAnythingAppController::PreprocessTextForSpeech() { +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) read_aloud_model_.PreprocessTextForSpeech(model_.is_pdf(), model_.IsDocs(), model_.GetCurrentlyVisibleNodes()); +#endif } void ReadAnythingAppController::MovePositionToNextGranularity() { @@ -2044,14 +2050,18 @@ bool ReadAnythingAppController::IsDocsLoadMoreButtonVisible() const { void ReadAnythingAppController::UpdateDependencyParserModel( base::File model_file) { +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) read_aloud_model_.GetDependencyParserModel().UpdateWithFile( std::move(model_file)); +#endif } +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) DependencyParserModel& ReadAnythingAppController::GetDependencyParserModelForTesting() { return read_aloud_model_.GetDependencyParserModel(); } +#endif void ReadAnythingAppController::OnTreeAdded(ui::AXTree* tree) { auto observation = diff --git a/chrome/renderer/accessibility/read_anything/read_anything_app_controller.h b/chrome/renderer/accessibility/read_anything/read_anything_app_controller.h --- a/chrome/renderer/accessibility/read_anything/read_anything_app_controller.h +++ b/chrome/renderer/accessibility/read_anything/read_anything_app_controller.h @@ -46,7 +46,9 @@ class MojoUkmRecorder; } // namespace ukm class AXTreeDistiller; +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) class DependencyParserModel; +#endif class ReadAnythingAppControllerTest; class ReadAnythingAppControllerScreen2xDataCollectionModeTest; @@ -285,7 +287,9 @@ class ReadAnythingAppController // available. void UpdateDependencyParserModel(base::File model_file); +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) DependencyParserModel& GetDependencyParserModelForTesting(); +#endif // Called when distillation has completed. void OnAXTreeDistilled(const ui::AXTreeID& tree_id, diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn --- a/chrome/utility/BUILD.gn +++ b/chrome/utility/BUILD.gn @@ -64,7 +64,7 @@ static_library("utility") { "//printing/buildflags", "//services/data_decoder:lib", "//services/network:network_service", - "//services/passage_embeddings:passage_embeddings", + # "//services/passage_embeddings:passage_embeddings", "//services/passage_embeddings/public/mojom", "//services/screen_ai/buildflags", "//services/service_manager/public/cpp", diff --git a/chrome/utility/services.cc b/chrome/utility/services.cc --- a/chrome/utility/services.cc +++ b/chrome/utility/services.cc @@ -241,13 +241,6 @@ auto RunMirroringService( std::move(receiver), content::UtilityThread::Get()->GetIOTaskRunner()); } -auto RunPassageEmbeddingsService( - mojo::PendingReceiver - receiver) { - return std::make_unique( - std::move(receiver)); -} - #endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(ENABLE_BROWSER_SPEECH_SERVICE) @@ -464,7 +457,6 @@ void RegisterMainThreadServices(mojo::ServiceFactory& services) { #if !BUILDFLAG(IS_ANDROID) services.Add(RunProfileImporter); services.Add(RunMirroringService); - services.Add(RunPassageEmbeddingsService); services.Add(RunScreenAIServiceFactory); #endif // !BUILDFLAG(IS_ANDROID) diff --git a/components/BUILD.gn b/components/BUILD.gn --- a/components/BUILD.gn +++ b/components/BUILD.gn @@ -600,7 +600,7 @@ test("components_unittests") { "//components/media_router/common/providers/cast/channel:unit_tests", "//components/page_info:unit_tests", "//components/permissions:unit_tests", - "//components/permissions/prediction_service:unit_tests", + # "//components/permissions/prediction_service:unit_tests", "//components/privacy_sandbox:unit_tests", "//components/privacy_sandbox/privacy_sandbox_attestations:unit_tests", "//components/safety_check:unit_tests", diff --git a/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc b/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc --- a/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc +++ b/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc @@ -259,6 +259,7 @@ void AutofillOptimizationGuide::OnDidParseForm( // If we do not have any optimization types to register, do not do anything. if (!optimization_types.empty()) { // Register all optimization types that we need based on `form_structure`. + if (decider_) decider_->RegisterOptimizationTypes( std::vector( std::move(optimization_types).extract())); @@ -336,7 +337,7 @@ bool AutofillOptimizationGuide::ShouldBlockSingleFieldSuggestions( const AutofillField* field) const { // If the field's storable type is `IBAN_VALUE`, check whether IBAN // suggestions should be blocked based on `url`. - if (field->Type().GetStorableType() == IBAN_VALUE) { + if (decider_ && field->Type().GetStorableType() == IBAN_VALUE) { optimization_guide::OptimizationGuideDecision decision = decider_->CanApplyOptimization( url, optimization_guide::proto::IBAN_AUTOFILL_BLOCKED, @@ -362,7 +363,7 @@ bool AutofillOptimizationGuide::ShouldBlockFormFieldSuggestion( const CreditCard& card) const { if (auto optimization_type = GetVcnMerchantOptOutOptimizationTypeForCard(card); - optimization_type != optimization_guide::proto::TYPE_UNSPECIFIED) { + decider_ && optimization_type != optimization_guide::proto::TYPE_UNSPECIFIED) { optimization_guide::OptimizationGuideDecision decision = decider_->CanApplyOptimization(url, optimization_type, /*optimization_metadata=*/nullptr); diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/omnibox/browser/autocomplete_controller.cc --- a/components/omnibox/browser/autocomplete_controller.cc +++ b/components/omnibox/browser/autocomplete_controller.cc @@ -51,7 +51,9 @@ #include "components/omnibox/browser/autocomplete_match.h" #include "components/omnibox/browser/autocomplete_match_type.h" #include "components/omnibox/browser/autocomplete_provider.h" +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) #include "components/omnibox/browser/autocomplete_provider_client.h" +#endif #include "components/omnibox/browser/autocomplete_scoring_signals_annotator.h" #include "components/omnibox/browser/bookmark_provider.h" #include "components/omnibox/browser/bookmark_scoring_signals_annotator.h" @@ -125,6 +127,7 @@ using ProviderType = AutocompleteProvider::Type; constexpr bool is_android = !!BUILDFLAG(IS_ANDROID); +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) void RecordMlScoreCoverage(size_t matches_with_non_null_scores, size_t total_scored_matches) { int percent_score_coverage = @@ -233,6 +236,7 @@ void RecordTotalMatchesScored(size_t num_scored) { base::UmaHistogramCounts1000("Omnibox.URLScoringModelExecuted.Matches", num_scored); } +#endif // Appends available autocompletion of the given type, subtype, and number to // the existing available autocompletions string, encoding according to the diff --git a/components/omnibox/browser/base_search_provider.cc b/components/omnibox/browser/base_search_provider.cc --- a/components/omnibox/browser/base_search_provider.cc +++ b/components/omnibox/browser/base_search_provider.cc @@ -99,14 +99,14 @@ BaseSearchProvider::BaseSearchProvider(AutocompleteProvider::Type type, bool BaseSearchProvider::ShouldPrefetch(const AutocompleteMatch& match) { // TODO (manukh): `GetAdditionalInfoForDebugging()` shouldn't be used for // non-debugging purposes. - return match.GetAdditionalInfoForDebugging(kShouldPrefetchKey) == kTrue; + return false; } // static bool BaseSearchProvider::ShouldPrerender(const AutocompleteMatch& match) { // TODO (manukh): `GetAdditionalInfoForDebugging()` shouldn't be used for // non-debugging purposes. - return match.GetAdditionalInfoForDebugging(kShouldPrerenderKey) == kTrue; + return false; } // static diff --git a/components/optimization_guide/core/hints_fetcher.cc b/components/optimization_guide/core/hints_fetcher.cc --- a/components/optimization_guide/core/hints_fetcher.cc +++ b/components/optimization_guide/core/hints_fetcher.cc @@ -202,6 +202,7 @@ bool HintsFetcher::FetchOptimizationGuideServiceHints( bool skip_cache, HintsFetchedCallback hints_fetched_callback, std::optional request_context_metadata) { + if ((true)) return false; DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_GT(optimization_types.size(), 0u); request_context_ = request_context; diff --git a/components/optimization_guide/core/hints_manager.cc b/components/optimization_guide/core/hints_manager.cc --- a/components/optimization_guide/core/hints_manager.cc +++ b/components/optimization_guide/core/hints_manager.cc @@ -397,6 +397,7 @@ void HintsManager::Shutdown() { OptimizationGuideDecision HintsManager::GetOptimizationGuideDecisionFromOptimizationTypeDecision( OptimizationTypeDecision optimization_type_decision) { + if ((true)) return OptimizationGuideDecision::kFalse; switch (optimization_type_decision) { case OptimizationTypeDecision::kAllowedByOptimizationFilter: case OptimizationTypeDecision::kAllowedByHint: @@ -1106,6 +1107,7 @@ void HintsManager::CanApplyOptimizationOnDemand( OnDemandOptimizationGuideDecisionRepeatingCallback callback, std::optional request_context_metadata) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + if ((true)) return; // no consent on bromite if (!on_demand_hints_for_testing_.empty()) { for (const GURL& url : urls) { const auto& all_hints = on_demand_hints_for_testing_[url]; @@ -1425,6 +1427,9 @@ OptimizationTypeDecision HintsManager::CanApplyOptimization( bool skip_cache, OptimizationMetadata* optimization_metadata) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + if ((true)) { + return OptimizationTypeDecision::kNoHintAvailable; + } ScopedCanApplyOptimizationLogger scoped_logger(optimization_type, url, optimization_guide_logger_); diff --git a/components/optimization_guide/core/optimization_guide_features.cc b/components/optimization_guide/core/optimization_guide_features.cc --- a/components/optimization_guide/core/optimization_guide_features.cc +++ b/components/optimization_guide/core/optimization_guide_features.cc @@ -38,11 +38,7 @@ namespace features { namespace { constexpr auto enabled_by_default_mobile_only = -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) - base::FEATURE_ENABLED_BY_DEFAULT; -#else base::FEATURE_DISABLED_BY_DEFAULT; -#endif } // namespace @@ -460,8 +456,7 @@ size_t MaxURLKeyedHintCacheSize() { } bool ShouldPersistHintsToDisk() { - return GetFieldTrialParamByFeatureAsBool(kOptimizationHints, - "persist_hints_to_disk", true); + return false; } RequestContextSet GetAllowedContextsForPersonalizedMetadata() { @@ -904,5 +899,13 @@ bool IsPrivacyGuideAiSettingsEnabled() { return base::FeatureList::IsEnabled(kPrivacyGuideAiSettings); } +SET_CROMITE_FEATURE_DISABLED(kOptimizationHints); +SET_CROMITE_FEATURE_DISABLED(kRemoteOptimizationGuideFetching); +SET_CROMITE_FEATURE_DISABLED(kRemoteOptimizationGuideFetchingAnonymousDataConsent); +SET_CROMITE_FEATURE_DISABLED(kOptimizationTargetPrediction); +SET_CROMITE_FEATURE_DISABLED(kOptimizationGuideModelDownloading); +SET_CROMITE_FEATURE_DISABLED(kPushNotifications); +SET_CROMITE_FEATURE_DISABLED(kPreventLongRunningPredictionModels); +SET_CROMITE_FEATURE_DISABLED(kOptimizationGuideFetchingForSRP); } // namespace features } // namespace optimization_guide diff --git a/components/optimization_guide/core/prediction_model_download_manager.cc b/components/optimization_guide/core/prediction_model_download_manager.cc --- a/components/optimization_guide/core/prediction_model_download_manager.cc +++ b/components/optimization_guide/core/prediction_model_download_manager.cc @@ -46,7 +46,7 @@ namespace { // we require models to come from. constexpr std::array kPublisherKeyHash = { 0x66, 0xa1, 0xd9, 0x3e, 0x4e, 0x5a, 0x66, 0x8a, 0x0f, 0xd3, 0xfa, - 0xa3, 0x70, 0x71, 0x42, 0x16, 0x0d, 0x2d, 0x68, 0xb0, 0x53, 0x02, + 0x01, 0x02, 0x03, 0x04, 0x16, 0x0d, 0x2d, 0x68, 0xb0, 0x53, 0x02, 0x5c, 0x7f, 0xd0, 0x0c, 0xa1, 0x6e, 0xef, 0xdd, 0x63, 0x7a}; const net::NetworkTrafficAnnotationTag kOptimizationGuidePredictionModelsTrafficAnnotation = @@ -104,7 +104,7 @@ PredictionModelDownloadManager::PredictionModelDownloadManager( GetBaseModelDirForDownloadCallback get_base_model_dir_for_download_callback, scoped_refptr background_task_runner) : download_service_(download_service), - is_available_for_downloads_(true), + is_available_for_downloads_(false), api_key_(features::GetOptimizationGuideServiceAPIKey()), get_base_model_dir_for_download_callback_( get_base_model_dir_for_download_callback), @@ -115,6 +115,7 @@ PredictionModelDownloadManager::~PredictionModelDownloadManager() = default; void PredictionModelDownloadManager::StartDownload( const GURL& download_url, proto::OptimizationTarget optimization_target) { + if ((true)) return; download::DownloadParams download_params; download_params.client = download::DownloadClient::OPTIMIZATION_GUIDE_PREDICTION_MODELS; @@ -264,6 +265,7 @@ bool PredictionModelDownloadManager::VerifyDownload( const base::FilePath& download_file_path, const base::FilePath& base_model_dir, bool delete_file_on_error) { + if ((true)) return false; if (!switches::ShouldSkipModelDownloadVerificationForTesting()) { // Verify that the |download_file_path| contains a valid CRX file. std::string public_key; diff --git a/components/optimization_guide/core/prediction_model_fetcher_impl.cc b/components/optimization_guide/core/prediction_model_fetcher_impl.cc --- a/components/optimization_guide/core/prediction_model_fetcher_impl.cc +++ b/components/optimization_guide/core/prediction_model_fetcher_impl.cc @@ -50,6 +50,7 @@ bool PredictionModelFetcherImpl::FetchOptimizationGuideServiceModels( proto::RequestContext request_context, const std::string& locale, ModelsFetchedCallback models_fetched_callback) { + if ((true)) return false; DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); if (url_loader_) diff --git a/components/optimization_guide/features.gni b/components/optimization_guide/features.gni --- a/components/optimization_guide/features.gni +++ b/components/optimization_guide/features.gni @@ -12,8 +12,7 @@ declare_args() { # This enables build with TFLite library. # TODO(b/269198471): Make sure the internal archive files for opt guide get # updated when win arm64 gets added as a supported platform for TFLite. - build_with_tflite_lib = is_android || is_win || is_linux || is_mac || - is_chromeos || is_fuchsia || is_ios + build_with_tflite_lib = false } if (is_ios) { diff --git a/components/page_content_annotations/core/page_content_annotations_features.cc b/components/page_content_annotations/core/page_content_annotations_features.cc --- a/components/page_content_annotations/core/page_content_annotations_features.cc +++ b/components/page_content_annotations/core/page_content_annotations_features.cc @@ -302,4 +302,8 @@ bool ShouldIncludeHiddenButSearchableContent() { return kIncludeHiddenButSearchableContent.Get(); } +SET_CROMITE_FEATURE_DISABLED(kPageContentAnnotations); +SET_CROMITE_FEATURE_DISABLED(kRemotePageMetadata); +SET_CROMITE_FEATURE_DISABLED(kPageContentAnnotationsValidation); +SET_CROMITE_FEATURE_DISABLED(kPageContentAnnotationsPersistSalientImageMetadata); } // namespace page_content_annotations::features diff --git a/components/page_content_annotations/core/page_content_annotations_model_manager.cc b/components/page_content_annotations/core/page_content_annotations_model_manager.cc --- a/components/page_content_annotations/core/page_content_annotations_model_manager.cc +++ b/components/page_content_annotations/core/page_content_annotations_model_manager.cc @@ -44,6 +44,7 @@ PageContentAnnotationsModelManager::~PageContentAnnotationsModelManager() = void PageContentAnnotationsModelManager::SetUpPageVisibilityModel( optimization_guide::OptimizationGuideModelProvider* optimization_guide_model_provider) { + if ((true)) return; // was kPageVisibilityBatchAnnotations if (page_visibility_model_handler_) return; diff --git a/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn b/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn --- a/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn +++ b/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn @@ -27,6 +27,13 @@ source_set("notification_content_detection") { ] } +source_set("constants") { + sources = [ + "notification_content_detection_constants.cc", + "notification_content_detection_constants.h", + ] +} + source_set("test_utils") { testonly = true sources = [ diff --git a/components/safe_browsing/core/common/features.cc b/components/safe_browsing/core/common/features.cc --- a/components/safe_browsing/core/common/features.cc +++ b/components/safe_browsing/core/common/features.cc @@ -268,6 +268,7 @@ constexpr base::FeatureParam BASE_FEATURE(kOnDeviceNotificationContentDetectionModel, "OnDeviceNotificationContentDetectionModel", base::FEATURE_ENABLED_BY_DEFAULT); +SET_CROMITE_FEATURE_DISABLED(kOnDeviceNotificationContentDetectionModel); BASE_FEATURE(kNotificationTelemetry, "NotificationTelemetry", diff --git a/content/browser/service_worker/service_worker_main_resource_loader.cc b/content/browser/service_worker/service_worker_main_resource_loader.cc --- a/content/browser/service_worker/service_worker_main_resource_loader.cc +++ b/content/browser/service_worker/service_worker_main_resource_loader.cc @@ -516,6 +516,7 @@ bool ServiceWorkerMainResourceLoader::MaybeStartAutoPreload( bool ServiceWorkerMainResourceLoader::StartRaceNetworkRequest( scoped_refptr context, scoped_refptr version) { + if ((true)) return false; // Set fetch_handler_bypass_option to tell the renderer that // RaceNetworkRequest is enabled. version->set_fetch_handler_bypass_option( diff --git a/cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc b/cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc new file mode 100644 --- /dev/null +++ b/cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc @@ -0,0 +1,2 @@ +SET_CROMITE_FEATURE_DISABLED(kBookmarkTriggerForPrerender2); +SET_CROMITE_FEATURE_DISABLED(kNewTabPageTriggerForPrerender2); diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc new file mode 100644 --- /dev/null +++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc @@ -0,0 +1 @@ +SET_CROMITE_FEATURE_DISABLED(kNewTabPageAndroidTriggerForPrerender2); diff --git a/cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc b/cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc new file mode 100644 --- /dev/null +++ b/cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc @@ -0,0 +1 @@ +SET_CROMITE_FEATURE_DISABLED(kPrerenderFallbackToPreconnect); diff --git a/cromite_flags/components/permissions/features_cc/Disable-all-predictors-code.inc b/cromite_flags/components/permissions/features_cc/Disable-all-predictors-code.inc new file mode 100644 --- /dev/null +++ b/cromite_flags/components/permissions/features_cc/Disable-all-predictors-code.inc @@ -0,0 +1,3 @@ +SET_CROMITE_FEATURE_DISABLED(kPermissionOnDeviceNotificationPredictions); +SET_CROMITE_FEATURE_DISABLED(kPermissionOnDeviceGeolocationPredictions); +SET_CROMITE_FEATURE_DISABLED(kPermissionPredictionsV2); diff --git a/cromite_flags/net/base/features_cc/Disable-all-predictors-code.inc b/cromite_flags/net/base/features_cc/Disable-all-predictors-code.inc new file mode 100644 --- /dev/null +++ b/cromite_flags/net/base/features_cc/Disable-all-predictors-code.inc @@ -0,0 +1 @@ +SET_CROMITE_FEATURE_DISABLED(kHttpCacheNoVarySearch); diff --git a/cromite_flags/services/network/public/cpp/features_cc/Disable-all-predictors-code.inc b/cromite_flags/services/network/public/cpp/features_cc/Disable-all-predictors-code.inc new file mode 100644 --- /dev/null +++ b/cromite_flags/services/network/public/cpp/features_cc/Disable-all-predictors-code.inc @@ -0,0 +1 @@ +SET_CROMITE_FEATURE_DISABLED(kNetworkContextPrefetch); diff --git a/cromite_flags/third_party/blink/common/features_cc/Disable-all-predictors-code.inc b/cromite_flags/third_party/blink/common/features_cc/Disable-all-predictors-code.inc new file mode 100644 --- /dev/null +++ b/cromite_flags/third_party/blink/common/features_cc/Disable-all-predictors-code.inc @@ -0,0 +1,2 @@ +SET_CROMITE_FEATURE_DISABLED(kNavigationPredictor); +SET_CROMITE_FEATURE_DISABLED(kPreloadingHeuristicsMLModel); diff --git a/services/webnn/features.gni b/services/webnn/features.gni --- a/services/webnn/features.gni +++ b/services/webnn/features.gni @@ -9,7 +9,7 @@ assert(use_blink) declare_args() { # TFLite is used as a fallback option on Apple and Windows. - webnn_use_tflite = is_android || is_chromeos || is_linux || is_apple || is_win + webnn_use_tflite = false #is_android || is_chromeos || is_linux || is_apple || is_win # Enable the GPU delegate provided by the Optimization Guide library. webnn_use_chrome_ml_api = enable_ml_internal diff --git a/third_party/blink/renderer/core/html/parser/html_document_parser.cc b/third_party/blink/renderer/core/html/parser/html_document_parser.cc --- a/third_party/blink/renderer/core/html/parser/html_document_parser.cc +++ b/third_party/blink/renderer/core/html/parser/html_document_parser.cc @@ -1798,6 +1798,7 @@ ALWAYS_INLINE bool HTMLDocumentParser::ShouldCheckTimeBudget( } bool HTMLDocumentParser::ShouldSkipPreloadScan() { + if ((true)) return true; // see https://wpt.live/html/syntax/speculative-parsing/expect-no-linked-resources/no-speculative-fetch.tentative.optional.html // Check if Document-Policy has Expect-No-Linked-Resources hint. auto* document = GetDocument(); if (const auto* context = document->GetExecutionContext()) { diff --git a/third_party/blink/renderer/core/speculation_rules/document_speculation_rules.cc b/third_party/blink/renderer/core/speculation_rules/document_speculation_rules.cc --- a/third_party/blink/renderer/core/speculation_rules/document_speculation_rules.cc +++ b/third_party/blink/renderer/core/speculation_rules/document_speculation_rules.cc @@ -642,6 +642,7 @@ void DocumentSpeculationRules::UpdateSpeculationCandidates() { return; } + if ((true)) return; HeapVector> candidates; auto push_candidates = [&candidates, &document, this]( mojom::blink::SpeculationAction action, diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 @@ -3734,7 +3734,7 @@ // // It also has some feature params defined throughout the codebase. name: "Prerender2", - status: "stable", + status: "test", }, { name: "Presentation", --