Merge changes from topic "fixTests" into main

* changes:
  Fix tests to use updated API
  Add crashrecovery libraries to tests
diff --git a/packages/CrashRecovery/services/platform/java/com/android/server/PackageWatchdog.java b/packages/CrashRecovery/services/platform/java/com/android/server/PackageWatchdog.java
index be339cd..129e47f 100644
--- a/packages/CrashRecovery/services/platform/java/com/android/server/PackageWatchdog.java
+++ b/packages/CrashRecovery/services/platform/java/com/android/server/PackageWatchdog.java
@@ -383,7 +383,7 @@
      *
      * <p>If monitoring a package supporting explicit health check, at the end of the monitoring
      * duration if {@link #onHealthCheckPassed} was never called,
-     * {@link PackageHealthObserver#execute} will be called as if the package failed.
+     * {@link PackageHealthObserver#onExecuteHealthCheckMitigation} will be called as if the package failed.
      *
      * <p>If {@code observer} is already monitoring a package in {@code packageNames},
      * the monitoring window of that package will be reset to {@code durationMs} and the health
@@ -546,8 +546,8 @@
                                 maybeExecute(currentObserverToNotify, versionedPackage,
                                         failureReason, currentObserverImpact, mitigationCount);
                             } else {
-                                currentObserverToNotify.execute(versionedPackage,
-                                        failureReason, mitigationCount);
+                                currentObserverToNotify.onExecuteHealthCheckMitigation(
+                                        versionedPackage, failureReason, mitigationCount);
                             }
                         }
                     }
@@ -582,7 +582,8 @@
                 maybeExecute(currentObserverToNotify, failingPackage, failureReason,
                         currentObserverImpact, /*mitigationCount=*/ 1);
             } else {
-                currentObserverToNotify.execute(failingPackage,  failureReason, 1);
+                currentObserverToNotify.onExecuteHealthCheckMitigation(failingPackage,
+                        failureReason, 1);
             }
         }
     }
@@ -596,7 +597,8 @@
             synchronized (mLock) {
                 mLastMitigation = mSystemClock.uptimeMillis();
             }
-            currentObserverToNotify.execute(versionedPackage, failureReason, mitigationCount);
+            currentObserverToNotify.onExecuteHealthCheckMitigation(versionedPackage, failureReason,
+                    mitigationCount);
         }
     }
 
@@ -658,12 +660,12 @@
                         currentObserverInternal.setBootMitigationCount(
                                 currentObserverMitigationCount);
                         saveAllObserversBootMitigationCountToMetadata(METADATA_FILE);
-                        currentObserverToNotify.executeBootLoopMitigation(
+                        currentObserverToNotify.onExecuteBootLoopMitigation(
                                 currentObserverMitigationCount);
                     } else {
                         mBootThreshold.setMitigationCount(mitigationCount);
                         mBootThreshold.saveMitigationCountToMetadata();
-                        currentObserverToNotify.executeBootLoopMitigation(mitigationCount);
+                        currentObserverToNotify.onExecuteBootLoopMitigation(mitigationCount);
                     }
                 }
             }
@@ -749,7 +751,8 @@
         return mPackagesExemptFromImpactLevelThreshold;
     }
 
-    /** Possible severity values of the user impact of a {@link PackageHealthObserver#execute}.
+    /** Possible severity values of the user impact of a
+     * {@link PackageHealthObserver#onExecuteHealthCheckMitigation}.
      * @hide
      */
     @Retention(SOURCE)
@@ -797,7 +800,7 @@
          *
          *
          * @return any one of {@link PackageHealthObserverImpact} to express the impact
-         * to the user on {@link #execute}
+         * to the user on {@link #onExecuteHealthCheckMitigation}
          */
         @PackageHealthObserverImpact int onHealthCheckFailed(
                 @Nullable VersionedPackage versionedPackage,
@@ -814,7 +817,7 @@
          *                        (including this time).
          * @return {@code true} if action was executed successfully, {@code false} otherwise
          */
-        boolean execute(@Nullable VersionedPackage versionedPackage,
+        boolean onExecuteHealthCheckMitigation(@Nullable VersionedPackage versionedPackage,
                 @FailureReasons int failureReason, int mitigationCount);
 
 
@@ -834,7 +837,7 @@
          * @param mitigationCount the number of times mitigation has been attempted for this
          *                        boot loop (including this time).
          */
-        default boolean executeBootLoopMitigation(int mitigationCount) {
+        default boolean onExecuteBootLoopMitigation(int mitigationCount) {
             return false;
         }
 
@@ -1115,7 +1118,7 @@
                         if (versionedPkg != null) {
                             Slog.i(TAG,
                                     "Explicit health check failed for package " + versionedPkg);
-                            registeredObserver.execute(versionedPkg,
+                            registeredObserver.onExecuteHealthCheckMitigation(versionedPkg,
                                     PackageWatchdog.FAILURE_REASON_EXPLICIT_HEALTH_CHECK, 1);
                         }
                     }
diff --git a/packages/CrashRecovery/services/platform/java/com/android/server/RescueParty.java b/packages/CrashRecovery/services/platform/java/com/android/server/RescueParty.java
index feb5775..f757236 100644
--- a/packages/CrashRecovery/services/platform/java/com/android/server/RescueParty.java
+++ b/packages/CrashRecovery/services/platform/java/com/android/server/RescueParty.java
@@ -859,7 +859,7 @@
         }
 
         @Override
-        public boolean execute(@Nullable VersionedPackage failedPackage,
+        public boolean onExecuteHealthCheckMitigation(@Nullable VersionedPackage failedPackage,
                 @FailureReasons int failureReason, int mitigationCount) {
             if (isDisabled()) {
                 return false;
@@ -927,7 +927,7 @@
         }
 
         @Override
-        public boolean executeBootLoopMitigation(int mitigationCount) {
+        public boolean onExecuteBootLoopMitigation(int mitigationCount) {
             if (isDisabled()) {
                 return false;
             }
diff --git a/packages/CrashRecovery/services/platform/java/com/android/server/rollback/RollbackPackageHealthObserver.java b/packages/CrashRecovery/services/platform/java/com/android/server/rollback/RollbackPackageHealthObserver.java
index d206c66..7445534 100644
--- a/packages/CrashRecovery/services/platform/java/com/android/server/rollback/RollbackPackageHealthObserver.java
+++ b/packages/CrashRecovery/services/platform/java/com/android/server/rollback/RollbackPackageHealthObserver.java
@@ -158,7 +158,7 @@
                 // Note: For non-native crashes the rollback-all step has higher impact
                 impact = PackageHealthObserverImpact.USER_IMPACT_LEVEL_30;
             } else if (getAvailableRollback(failedPackage) != null) {
-                // Rollback is available, we may get a callback into #execute
+                // Rollback is available, we may get a callback into #onExecuteHealthCheckMitigation
                 impact = PackageHealthObserverImpact.USER_IMPACT_LEVEL_30;
             } else if (anyRollbackAvailable) {
                 // If any rollbacks are available, we will commit them
@@ -175,7 +175,7 @@
     }
 
     @Override
-    public boolean execute(@Nullable VersionedPackage failedPackage,
+    public boolean onExecuteHealthCheckMitigation(@Nullable VersionedPackage failedPackage,
             @FailureReasons int rollbackReason, int mitigationCount) {
         Slog.i(TAG, "Executing remediation."
                 + " failedPackage: "
@@ -229,7 +229,7 @@
     }
 
     @Override
-    public boolean executeBootLoopMitigation(int mitigationCount) {
+    public boolean onExecuteBootLoopMitigation(int mitigationCount) {
         if (Flags.recoverabilityDetection()) {
             List<RollbackInfo> availableRollbacks = getAvailableRollbacks();
 
diff --git a/services/tests/mockingservicestests/Android.bp b/services/tests/mockingservicestests/Android.bp
index 9a300fb..be698b2 100644
--- a/services/tests/mockingservicestests/Android.bp
+++ b/services/tests/mockingservicestests/Android.bp
@@ -77,7 +77,10 @@
         "flag-junit",
         "am_flags_lib",
         "device_policy_aconfig_flags_lib",
-    ],
+    ] + select(soong_config_variable("ANDROID", "release_crashrecovery_module"), {
+        "true": ["service-crashrecovery.impl"],
+        default: [],
+    }),
 
     libs: [
         "android.test.mock.stubs.system",
diff --git a/services/tests/mockingservicestests/src/com/android/server/RescuePartyTest.java b/services/tests/mockingservicestests/src/com/android/server/RescuePartyTest.java
index f2acbc3..f40d803 100644
--- a/services/tests/mockingservicestests/src/com/android/server/RescuePartyTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/RescuePartyTest.java
@@ -45,13 +45,11 @@
 import android.os.RecoverySystem;
 import android.os.SystemProperties;
 import android.os.UserHandle;
-import android.platform.test.annotations.DisableFlags;
 import android.platform.test.annotations.EnableFlags;
 import android.platform.test.flag.junit.FlagsParameterization;
 import android.platform.test.flag.junit.SetFlagsRule;
 import android.provider.DeviceConfig;
 import android.provider.Settings;
-import android.util.ArraySet;
 
 import com.android.dx.mockito.inline.extended.ExtendedMockito;
 import com.android.server.PackageWatchdog.PackageHealthObserverImpact;
@@ -74,11 +72,9 @@
 import org.mockito.stubbing.Answer;
 
 import java.lang.reflect.Field;
-import java.util.Arrays;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
-import java.util.concurrent.Executor;
 import java.util.concurrent.TimeUnit;
 
 
@@ -250,37 +246,6 @@
     }
 
     @Test
-    @DisableFlags({Flags.FLAG_RECOVERABILITY_DETECTION,
-            Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS})
-    public void testBootLoop() {
-        // this is old test where the flag needs to be disabled
-        RescueParty.onSettingsProviderPublished(mMockContext);
-        verify(() -> DeviceConfig.setMonitorCallback(eq(mMockContentResolver),
-                any(Executor.class),
-                mMonitorCallbackCaptor.capture()));
-        HashMap<String, Integer> verifiedTimesMap = new HashMap<String, Integer>();
-
-        noteBoot(1);
-
-        // Record DeviceConfig accesses
-        RescuePartyObserver observer = RescuePartyObserver.getInstance(mMockContext);
-        DeviceConfig.MonitorCallback monitorCallback = mMonitorCallbackCaptor.getValue();
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE1);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE2);
-
-        final String[] expectedAllResetNamespaces = new String[]{NAMESPACE1, NAMESPACE2};
-
-        noteBoot(2);
-        noteBoot(3);
-
-        noteBoot(4);
-        assertTrue(RescueParty.isRebootPropertySet());
-
-        setCrashRecoveryPropAttemptingReboot(false);
-        noteBoot(5);
-        assertTrue(RescueParty.isFactoryResetPropertySet());
-    }
-    @Test
     @EnableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
     public void testBootLoopNoFlags() {
         // this is old test where the flag needs to be disabled
@@ -293,61 +258,6 @@
     }
 
     @Test
-    @EnableFlags(Flags.FLAG_RECOVERABILITY_DETECTION)
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    public void testBootLoopRecoverability() {
-        RescueParty.onSettingsProviderPublished(mMockContext);
-        verify(() -> DeviceConfig.setMonitorCallback(eq(mMockContentResolver),
-                any(Executor.class),
-                mMonitorCallbackCaptor.capture()));
-        HashMap<String, Integer> verifiedTimesMap = new HashMap<String, Integer>();
-
-        // Record DeviceConfig accesses
-        DeviceConfig.MonitorCallback monitorCallback = mMonitorCallbackCaptor.getValue();
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE1);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE2);
-
-        final String[] expectedAllResetNamespaces = new String[]{NAMESPACE1, NAMESPACE2};
-
-
-        noteBoot(1);
-
-        noteBoot(2);
-        assertTrue(RescueParty.isRebootPropertySet());
-
-        noteBoot(3);
-
-        verifyOnlySettingsReset(Settings.RESET_MODE_UNTRUSTED_DEFAULTS);
-
-        noteBoot(4);
-        verifyOnlySettingsReset(Settings.RESET_MODE_UNTRUSTED_CHANGES);
-
-        noteBoot(5);
-        verifyOnlySettingsReset(Settings.RESET_MODE_TRUSTED_DEFAULTS);
-
-        setCrashRecoveryPropAttemptingReboot(false);
-        noteBoot(6);
-        assertTrue(RescueParty.isFactoryResetPropertySet());
-    }
-
-    @Test
-    @DisableFlags({Flags.FLAG_RECOVERABILITY_DETECTION,
-            Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS})
-    public void testPersistentAppCrash() {
-        // this is old test where the flag needs to be disabled
-        noteAppCrash(1, true);
-        noteAppCrash(2, true);
-        noteAppCrash(3, true);
-
-        noteAppCrash(4, true);
-        assertTrue(RescueParty.isRebootPropertySet());
-
-        setCrashRecoveryPropAttemptingReboot(false);
-        noteAppCrash(5, true);
-        assertTrue(RescueParty.isFactoryResetPropertySet());
-    }
-
-    @Test
     @EnableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
     public void testPersistentAppCrashNoFlags() {
         // this is old test where the flag needs to be disabled
@@ -360,98 +270,6 @@
     }
 
     @Test
-    @EnableFlags(Flags.FLAG_RECOVERABILITY_DETECTION)
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    public void testPersistentAppCrashRecoverability() {
-        RescueParty.onSettingsProviderPublished(mMockContext);
-        verify(() -> DeviceConfig.setMonitorCallback(eq(mMockContentResolver),
-                any(Executor.class),
-                mMonitorCallbackCaptor.capture()));
-        HashMap<String, Integer> verifiedTimesMap = new HashMap<String, Integer>();
-
-        // Record DeviceConfig accesses
-        DeviceConfig.MonitorCallback monitorCallback = mMonitorCallbackCaptor.getValue();
-        monitorCallback.onDeviceConfigAccess(PERSISTENT_PACKAGE, NAMESPACE1);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE1);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE2);
-
-        final String[] expectedResetNamespaces = new String[]{NAMESPACE1};
-        final String[] expectedAllResetNamespaces = new String[]{NAMESPACE1, NAMESPACE2};
-
-        noteAppCrash(1, true);
-
-        noteAppCrash(2, true);
-
-        noteAppCrash(3, true);
-        assertTrue(RescueParty.isRebootPropertySet());
-
-        noteAppCrash(4, true);
-        verifyOnlySettingsReset(Settings.RESET_MODE_UNTRUSTED_DEFAULTS);
-
-        noteAppCrash(5, true);
-        verifyOnlySettingsReset(Settings.RESET_MODE_UNTRUSTED_CHANGES);
-
-        noteAppCrash(6, true);
-        verifyOnlySettingsReset(Settings.RESET_MODE_TRUSTED_DEFAULTS);
-
-        setCrashRecoveryPropAttemptingReboot(false);
-        noteAppCrash(7, true);
-        assertTrue(RescueParty.isFactoryResetPropertySet());
-    }
-
-    @Test
-    @DisableFlags({Flags.FLAG_RECOVERABILITY_DETECTION,
-            Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS})
-    public void testNonPersistentApp() {
-        // this is old test where the flag needs to be disabled
-        noteAppCrash(1, false);
-        noteAppCrash(2, false);
-        noteAppCrash(3, false);
-        assertFalse(RescueParty.isRebootPropertySet());
-
-        noteAppCrash(5, false);
-        assertFalse(RescueParty.isFactoryResetPropertySet());
-    }
-
-    @Test
-    @EnableFlags(Flags.FLAG_RECOVERABILITY_DETECTION)
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    public void testNonPersistentAppOnlyPerformsFlagResetsRecoverabilityDetection() {
-        RescueParty.onSettingsProviderPublished(mMockContext);
-        verify(() -> DeviceConfig.setMonitorCallback(eq(mMockContentResolver),
-                any(Executor.class),
-                mMonitorCallbackCaptor.capture()));
-        HashMap<String, Integer> verifiedTimesMap = new HashMap<String, Integer>();
-
-        // Record DeviceConfig accesses
-        DeviceConfig.MonitorCallback monitorCallback = mMonitorCallbackCaptor.getValue();
-        monitorCallback.onDeviceConfigAccess(NON_PERSISTENT_PACKAGE, NAMESPACE1);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE1);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE2);
-
-        final String[] expectedResetNamespaces = new String[]{NAMESPACE1};
-        final String[] expectedAllResetNamespaces = new String[]{NAMESPACE1, NAMESPACE2};
-
-        noteAppCrash(1, false);
-
-        noteAppCrash(2, false);
-
-        noteAppCrash(3, false);
-        assertFalse(RescueParty.isRebootPropertySet());
-
-        noteAppCrash(4, false);
-        verifyNoSettingsReset(Settings.RESET_MODE_UNTRUSTED_DEFAULTS);
-        noteAppCrash(5, false);
-        verifyNoSettingsReset(Settings.RESET_MODE_UNTRUSTED_CHANGES);
-        noteAppCrash(6, false);
-        verifyNoSettingsReset(Settings.RESET_MODE_TRUSTED_DEFAULTS);
-
-        setCrashRecoveryPropAttemptingReboot(false);
-        noteAppCrash(7, false);
-        assertFalse(RescueParty.isFactoryResetPropertySet());
-    }
-
-    @Test
     public void testIsRecoveryTriggeredReboot() {
         for (int i = 0; i < LEVEL_FACTORY_RESET; i++) {
             noteBoot(i + 1);
@@ -522,6 +340,7 @@
 
     @Test
     public void testNotThrottlingAfterTimeoutOnAppCrash() {
+        when(mMockContext.getPackageManager()).thenReturn(mPackageManager);
         setCrashRecoveryPropAttemptingReboot(false);
         long now = System.currentTimeMillis();
         long afterTimeout = now - TimeUnit.MINUTES.toMillis(
@@ -534,30 +353,15 @@
     }
 
     @Test
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    public void testNativeRescuePartyResets() {
-        doReturn(true).when(() -> SettingsToPropertiesMapper.isNativeFlagsResetPerformed());
-        doReturn(FAKE_RESET_NATIVE_NAMESPACES).when(
-                () -> SettingsToPropertiesMapper.getResetNativeCategories());
-
-        RescueParty.onSettingsProviderPublished(mMockContext);
-
-        verify(() -> DeviceConfig.resetToDefaults(Settings.RESET_MODE_TRUSTED_DEFAULTS,
-                FAKE_NATIVE_NAMESPACE1));
-        verify(() -> DeviceConfig.resetToDefaults(Settings.RESET_MODE_TRUSTED_DEFAULTS,
-                FAKE_NATIVE_NAMESPACE2));
-    }
-
-    @Test
     public void testExplicitlyEnablingAndDisablingRescue() {
         SystemProperties.set(RescueParty.PROP_ENABLE_RESCUE, Boolean.toString(false));
         SystemProperties.set(PROP_DISABLE_RESCUE, Boolean.toString(true));
-        assertEquals(RescuePartyObserver.getInstance(mMockContext).execute(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 1), false);
+        assertEquals(RescuePartyObserver.getInstance(mMockContext).onExecuteHealthCheckMitigation(
+                sFailingPackage, PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 1), false);
 
         SystemProperties.set(RescueParty.PROP_ENABLE_RESCUE, Boolean.toString(true));
-        assertTrue(RescuePartyObserver.getInstance(mMockContext).execute(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 1));
+        assertTrue(RescuePartyObserver.getInstance(mMockContext).onExecuteHealthCheckMitigation(
+                sFailingPackage, PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 1));
     }
 
     @Test
@@ -565,8 +369,8 @@
         SystemProperties.set(RescueParty.PROP_ENABLE_RESCUE, Boolean.toString(false));
         SystemProperties.set(PROP_DEVICE_CONFIG_DISABLE_FLAG, Boolean.toString(true));
 
-        assertEquals(RescuePartyObserver.getInstance(mMockContext).execute(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 1), false);
+        assertEquals(RescuePartyObserver.getInstance(mMockContext).onExecuteHealthCheckMitigation(
+                sFailingPackage, PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 1), false);
 
         // Restore the property value initialized in SetUp()
         SystemProperties.set(RescueParty.PROP_ENABLE_RESCUE, Boolean.toString(true));
@@ -587,75 +391,6 @@
     }
 
     @Test
-    @DisableFlags({Flags.FLAG_RECOVERABILITY_DETECTION,
-            Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS})
-    public void testHealthCheckLevels() {
-        // this is old test where the flag needs to be disabled
-        RescuePartyObserver observer = RescuePartyObserver.getInstance(mMockContext);
-
-        // Ensure that no action is taken for cases where the failure reason is unknown
-        assertEquals(observer.onHealthCheckFailed(null, PackageWatchdog.FAILURE_REASON_UNKNOWN, 1),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_0);
-
-        // Ensure the correct user impact is returned for each mitigation count.
-        assertEquals(observer.onHealthCheckFailed(null,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 1),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_10);
-
-        assertEquals(observer.onHealthCheckFailed(null,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 2),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_10);
-
-        assertEquals(observer.onHealthCheckFailed(null,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 3),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_50);
-
-        assertEquals(observer.onHealthCheckFailed(null,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 4),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_50);
-    }
-
-    @Test
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    @EnableFlags(Flags.FLAG_RECOVERABILITY_DETECTION)
-    public void testHealthCheckLevelsRecoverabilityDetection() {
-        RescuePartyObserver observer = RescuePartyObserver.getInstance(mMockContext);
-
-        // Ensure that no action is taken for cases where the failure reason is unknown
-        assertEquals(observer.onHealthCheckFailed(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_UNKNOWN, 1),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_0);
-
-        // Ensure the correct user impact is returned for each mitigation count.
-        assertEquals(observer.onHealthCheckFailed(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 1),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_10);
-
-        assertEquals(observer.onHealthCheckFailed(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 2),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_40);
-
-        assertEquals(observer.onHealthCheckFailed(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 3),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_40);
-
-        assertEquals(observer.onHealthCheckFailed(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 4),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_40);
-
-        assertEquals(observer.onHealthCheckFailed(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 5),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_40);
-
-        assertEquals(observer.onHealthCheckFailed(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 6),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_40);
-
-        assertEquals(observer.onHealthCheckFailed(sFailingPackage,
-                PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 7),
-                PackageHealthObserverImpact.USER_IMPACT_LEVEL_40);
-    }
-    @Test
     @EnableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
     public void testHealthCheckLevelsNoFlags() {
         // this is old test where the flag needs to be disabled
@@ -674,36 +409,6 @@
                         PackageWatchdog.FAILURE_REASON_APP_NOT_RESPONDING, 2),
                 PackageHealthObserverImpact.USER_IMPACT_LEVEL_100);
     }
-    @Test
-    @DisableFlags({Flags.FLAG_RECOVERABILITY_DETECTION,
-            Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS})
-    public void testBootLoopLevels() {
-        // this is old test where the flag needs to be disabled
-
-
-        RescuePartyObserver observer = RescuePartyObserver.getInstance(mMockContext);
-
-        assertEquals(observer.onBootLoop(0), PackageHealthObserverImpact.USER_IMPACT_LEVEL_0);
-        assertEquals(observer.onBootLoop(1), PackageHealthObserverImpact.USER_IMPACT_LEVEL_10);
-        assertEquals(observer.onBootLoop(2), PackageHealthObserverImpact.USER_IMPACT_LEVEL_10);
-        assertEquals(observer.onBootLoop(3), PackageHealthObserverImpact.USER_IMPACT_LEVEL_50);
-        assertEquals(observer.onBootLoop(4), PackageHealthObserverImpact.USER_IMPACT_LEVEL_50);
-        assertEquals(observer.onBootLoop(5), PackageHealthObserverImpact.USER_IMPACT_LEVEL_100);
-    }
-
-    @Test
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    @EnableFlags(Flags.FLAG_RECOVERABILITY_DETECTION)
-    public void testBootLoopLevelsRecoverabilityDetection() {
-        RescuePartyObserver observer = RescuePartyObserver.getInstance(mMockContext);
-
-        assertEquals(observer.onBootLoop(1), PackageHealthObserverImpact.USER_IMPACT_LEVEL_40);
-        assertEquals(observer.onBootLoop(2), PackageHealthObserverImpact.USER_IMPACT_LEVEL_50);
-        assertEquals(observer.onBootLoop(3), PackageHealthObserverImpact.USER_IMPACT_LEVEL_71);
-        assertEquals(observer.onBootLoop(4), PackageHealthObserverImpact.USER_IMPACT_LEVEL_75);
-        assertEquals(observer.onBootLoop(5), PackageHealthObserverImpact.USER_IMPACT_LEVEL_80);
-        assertEquals(observer.onBootLoop(6), PackageHealthObserverImpact.USER_IMPACT_LEVEL_100);
-    }
 
     @Test
     @EnableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
@@ -714,129 +419,6 @@
         assertEquals(observer.onBootLoop(2), PackageHealthObserverImpact.USER_IMPACT_LEVEL_100);
     }
 
-    @Test
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    public void testResetDeviceConfigForPackagesOnlyRuntimeMap() {
-        RescueParty.onSettingsProviderPublished(mMockContext);
-        verify(() -> DeviceConfig.setMonitorCallback(eq(mMockContentResolver),
-                any(Executor.class),
-                mMonitorCallbackCaptor.capture()));
-
-        // Record DeviceConfig accesses
-        RescuePartyObserver observer = RescuePartyObserver.getInstance(mMockContext);
-        DeviceConfig.MonitorCallback monitorCallback = mMonitorCallbackCaptor.getValue();
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE1);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE2);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE2, NAMESPACE2);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE2, NAMESPACE3);
-        // Fake DeviceConfig value changes
-        monitorCallback.onNamespaceUpdate(NAMESPACE1);
-        monitorCallback.onNamespaceUpdate(NAMESPACE2);
-        monitorCallback.onNamespaceUpdate(NAMESPACE3);
-
-        doReturn("").when(() -> DeviceConfig.getString(
-                eq(RescueParty.NAMESPACE_CONFIGURATION),
-                eq(RescueParty.NAMESPACE_TO_PACKAGE_MAPPING_FLAG),
-                eq("")));
-
-        RescueParty.resetDeviceConfigForPackages(Arrays.asList(new String[]{CALLING_PACKAGE1}));
-        ArraySet<String> expectedNamespacesWiped = new ArraySet<String>(
-                Arrays.asList(new String[]{NAMESPACE1, NAMESPACE2}));
-        assertEquals(mNamespacesWiped, expectedNamespacesWiped);
-    }
-
-    @Test
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    public void testResetDeviceConfigForPackagesOnlyPresetMap() {
-        RescueParty.onSettingsProviderPublished(mMockContext);
-        verify(() -> DeviceConfig.setMonitorCallback(eq(mMockContentResolver),
-                any(Executor.class),
-                mMonitorCallbackCaptor.capture()));
-
-        String presetMapping = NAMESPACE1 + ":" + CALLING_PACKAGE1 + ","
-                + NAMESPACE2 + ":" + CALLING_PACKAGE2 + ","
-                + NAMESPACE3 + ":" + CALLING_PACKAGE1;
-        doReturn(presetMapping).when(() -> DeviceConfig.getString(
-                eq(RescueParty.NAMESPACE_CONFIGURATION),
-                eq(RescueParty.NAMESPACE_TO_PACKAGE_MAPPING_FLAG),
-                eq("")));
-
-        RescueParty.resetDeviceConfigForPackages(Arrays.asList(new String[]{CALLING_PACKAGE1}));
-        ArraySet<String> expectedNamespacesWiped = new ArraySet<String>(
-                Arrays.asList(new String[]{NAMESPACE1, NAMESPACE3}));
-        assertEquals(mNamespacesWiped, expectedNamespacesWiped);
-    }
-
-    @Test
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    public void testResetDeviceConfigForPackagesBothMaps() {
-        RescueParty.onSettingsProviderPublished(mMockContext);
-        verify(() -> DeviceConfig.setMonitorCallback(eq(mMockContentResolver),
-                any(Executor.class),
-                mMonitorCallbackCaptor.capture()));
-
-        // Record DeviceConfig accesses
-        RescuePartyObserver observer = RescuePartyObserver.getInstance(mMockContext);
-        DeviceConfig.MonitorCallback monitorCallback = mMonitorCallbackCaptor.getValue();
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE1);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE2);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE2, NAMESPACE2);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE2, NAMESPACE3);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE3, NAMESPACE4);
-        // Fake DeviceConfig value changes
-        monitorCallback.onNamespaceUpdate(NAMESPACE1);
-        monitorCallback.onNamespaceUpdate(NAMESPACE2);
-        monitorCallback.onNamespaceUpdate(NAMESPACE3);
-        monitorCallback.onNamespaceUpdate(NAMESPACE4);
-
-        String presetMapping = NAMESPACE1 + ":" + CALLING_PACKAGE1 + ","
-                + NAMESPACE2 + ":" + CALLING_PACKAGE2 + ","
-                + NAMESPACE4 + ":" + CALLING_PACKAGE3;
-        doReturn(presetMapping).when(() -> DeviceConfig.getString(
-                eq(RescueParty.NAMESPACE_CONFIGURATION),
-                eq(RescueParty.NAMESPACE_TO_PACKAGE_MAPPING_FLAG),
-                eq("")));
-
-        RescueParty.resetDeviceConfigForPackages(
-                Arrays.asList(new String[]{CALLING_PACKAGE1, CALLING_PACKAGE2}));
-        ArraySet<String> expectedNamespacesWiped = new ArraySet<String>(
-                Arrays.asList(new String[]{NAMESPACE1, NAMESPACE2, NAMESPACE3}));
-        assertEquals(mNamespacesWiped, expectedNamespacesWiped);
-    }
-
-    @Test
-    @DisableFlags(Flags.FLAG_DEPRECATE_FLAGS_AND_SETTINGS_RESETS)
-    public void testResetDeviceConfigNoExceptionWhenFlagMalformed() {
-        RescueParty.onSettingsProviderPublished(mMockContext);
-        verify(() -> DeviceConfig.setMonitorCallback(eq(mMockContentResolver),
-                any(Executor.class),
-                mMonitorCallbackCaptor.capture()));
-
-        // Record DeviceConfig accesses
-        RescuePartyObserver observer = RescuePartyObserver.getInstance(mMockContext);
-        DeviceConfig.MonitorCallback monitorCallback = mMonitorCallbackCaptor.getValue();
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE1, NAMESPACE1);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE2, NAMESPACE3);
-        monitorCallback.onDeviceConfigAccess(CALLING_PACKAGE3, NAMESPACE4);
-        // Fake DeviceConfig value changes
-        monitorCallback.onNamespaceUpdate(NAMESPACE1);
-        monitorCallback.onNamespaceUpdate(NAMESPACE2);
-        monitorCallback.onNamespaceUpdate(NAMESPACE3);
-        monitorCallback.onNamespaceUpdate(NAMESPACE4);
-
-        String invalidPresetMapping = NAMESPACE2 + ":" + CALLING_PACKAGE2 + ","
-                + NAMESPACE1 + "." + CALLING_PACKAGE2;
-        doReturn(invalidPresetMapping).when(() -> DeviceConfig.getString(
-                eq(RescueParty.NAMESPACE_CONFIGURATION),
-                eq(RescueParty.NAMESPACE_TO_PACKAGE_MAPPING_FLAG),
-                eq("")));
-
-        RescueParty.resetDeviceConfigForPackages(
-                Arrays.asList(new String[]{CALLING_PACKAGE1, CALLING_PACKAGE2}));
-        ArraySet<String> expectedNamespacesWiped = new ArraySet<String>(
-                Arrays.asList(new String[]{NAMESPACE1, NAMESPACE3}));
-        assertEquals(mNamespacesWiped, expectedNamespacesWiped);
-    }
 
     private void verifySettingsResets(int resetMode, String[] resetNamespaces,
             HashMap<String, Integer> configResetVerifiedTimesMap) {
@@ -858,13 +440,14 @@
     }
 
     private void noteBoot(int mitigationCount) {
-        RescuePartyObserver.getInstance(mMockContext).executeBootLoopMitigation(mitigationCount);
+        RescuePartyObserver.getInstance(mMockContext).onExecuteBootLoopMitigation(mitigationCount);
     }
 
     private void noteAppCrash(int mitigationCount, boolean isPersistent) {
         String packageName = isPersistent ? PERSISTENT_PACKAGE : NON_PERSISTENT_PACKAGE;
-        RescuePartyObserver.getInstance(mMockContext).execute(new VersionedPackage(
-                packageName, 1), PackageWatchdog.FAILURE_REASON_APP_CRASH, mitigationCount);
+        RescuePartyObserver.getInstance(mMockContext).onExecuteHealthCheckMitigation(
+                new VersionedPackage(packageName, 1), PackageWatchdog.FAILURE_REASON_APP_CRASH,
+                mitigationCount);
     }
 
     // Mock CrashRecoveryProperties as they cannot be accessed due to SEPolicy restrictions
diff --git a/services/tests/mockingservicestests/src/com/android/server/crashrecovery/Android.bp b/services/tests/mockingservicestests/src/com/android/server/crashrecovery/Android.bp
index 7ac7aca..1f88c29 100644
--- a/services/tests/mockingservicestests/src/com/android/server/crashrecovery/Android.bp
+++ b/services/tests/mockingservicestests/src/com/android/server/crashrecovery/Android.bp
@@ -36,7 +36,10 @@
         "services.core",
         "truth",
         "flag-junit",
-    ],
+    ] + select(soong_config_variable("ANDROID", "release_crashrecovery_module"), {
+        "true": ["service-crashrecovery.impl"],
+        default: [],
+    }),
 
     libs: [
         "android.test.mock.stubs.system",
diff --git a/services/tests/mockingservicestests/src/com/android/server/rollback/Android.bp b/services/tests/mockingservicestests/src/com/android/server/rollback/Android.bp
index 677ecf4..2f23e02 100644
--- a/services/tests/mockingservicestests/src/com/android/server/rollback/Android.bp
+++ b/services/tests/mockingservicestests/src/com/android/server/rollback/Android.bp
@@ -34,7 +34,10 @@
         "services.core",
         "truth",
         "flag-junit",
-    ],
+    ] + select(soong_config_variable("ANDROID", "release_crashrecovery_module"), {
+        "true": ["service-crashrecovery.impl"],
+        default: [],
+    }),
 
     libs: [
         "android.test.mock.stubs.system",
diff --git a/services/tests/mockingservicestests/src/com/android/server/rollback/RollbackPackageHealthObserverTest.java b/services/tests/mockingservicestests/src/com/android/server/rollback/RollbackPackageHealthObserverTest.java
index e0c7bfe..347dc81 100644
--- a/services/tests/mockingservicestests/src/com/android/server/rollback/RollbackPackageHealthObserverTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/rollback/RollbackPackageHealthObserverTest.java
@@ -109,14 +109,11 @@
     private static final String PROP_DISABLE_HIGH_IMPACT_ROLLBACK_FLAG =
             "persist.device_config.configuration.disable_high_impact_rollback";
 
-    private SystemConfig mSysConfig;
 
     @Rule public TemporaryFolder mTemporaryFolder = new TemporaryFolder();
 
     @Before
     public void setup() {
-        mSysConfig = new SystemConfigTestClass();
-
         mSession = ExtendedMockito.mockitoSession()
                 .initMocks(this)
                 .strictness(Strictness.LENIENT)
@@ -184,7 +181,7 @@
     @Test
     public void testHealthCheckLevels() {
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         VersionedPackage testFailedPackage = new VersionedPackage(APP_A, VERSION_CODE);
         VersionedPackage secondFailedPackage = new VersionedPackage(APP_B, VERSION_CODE);
 
@@ -228,14 +225,14 @@
     @Test
     public void testIsPersistent() {
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         assertTrue(observer.isPersistent());
     }
 
     @Test
     public void testMayObservePackage_withoutAnyRollback() {
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of());
         assertFalse(observer.mayObservePackage(APP_A));
@@ -245,7 +242,7 @@
     public void testMayObservePackage_forPersistentApp()
             throws PackageManager.NameNotFoundException {
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ApplicationInfo info = new ApplicationInfo();
         info.flags = ApplicationInfo.FLAG_PERSISTENT | ApplicationInfo.FLAG_SYSTEM;
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -260,7 +257,7 @@
     public void testMayObservePackage_forNonPersistentApp()
             throws PackageManager.NameNotFoundException {
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(mRollbackInfo));
         when(mRollbackInfo.getPackages()).thenReturn(List.of(mPackageRollbackInfo));
@@ -286,7 +283,7 @@
                 false, null, 111,
                 PackageManager.ROLLBACK_USER_IMPACT_LOW);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         VersionedPackage secondFailedPackage = new VersionedPackage(APP_B, VERSION_CODE);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -317,7 +314,7 @@
                 false, null, 111,
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         VersionedPackage secondFailedPackage = new VersionedPackage(APP_B, VERSION_CODE);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -348,7 +345,7 @@
                 false, null, 111,
                 PackageManager.ROLLBACK_USER_IMPACT_ONLY_MANUAL);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         VersionedPackage secondFailedPackage = new VersionedPackage(APP_B, VERSION_CODE);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -386,7 +383,7 @@
                 false, null, 222,
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         VersionedPackage failedPackage = new VersionedPackage(APP_C, VERSION_CODE);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -419,7 +416,7 @@
                 PackageManager.ROLLBACK_USER_IMPACT_LOW);
         VersionedPackage secondFailedPackage = new VersionedPackage(APP_B, VERSION_CODE);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
         // Make the rollbacks available
@@ -427,7 +424,7 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.execute(secondFailedPackage,
+        observer.onExecuteHealthCheckMitigation(secondFailedPackage,
                 PackageWatchdog.FAILURE_REASON_NATIVE_CRASH, 1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
@@ -461,7 +458,7 @@
                 false, null, 222,
                 PackageManager.ROLLBACK_USER_IMPACT_LOW);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -471,7 +468,8 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.execute(appBFrom, PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
+        observer.onExecuteHealthCheckMitigation(appBFrom, PackageWatchdog.FAILURE_REASON_APP_CRASH,
+                1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager).commitRollback(argument.capture(), any(), any());
@@ -506,7 +504,7 @@
                 PackageManager.ROLLBACK_USER_IMPACT_LOW);
         VersionedPackage failedPackage = new VersionedPackage(APP_C, VERSION_CODE);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -516,7 +514,8 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.execute(failedPackage, PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
+        observer.onExecuteHealthCheckMitigation(failedPackage,
+                PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, times(2)).commitRollback(
@@ -552,7 +551,7 @@
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         VersionedPackage failedPackage = new VersionedPackage(APP_C, VERSION_CODE);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -562,7 +561,8 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.execute(failedPackage, PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
+        observer.onExecuteHealthCheckMitigation(failedPackage,
+                PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, times(1)).commitRollback(
@@ -590,7 +590,7 @@
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         VersionedPackage failedPackage = new VersionedPackage(APP_C, VERSION_CODE);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -599,7 +599,8 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.execute(failedPackage, PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
+        observer.onExecuteHealthCheckMitigation(failedPackage,
+                PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, never()).commitRollback(argument.capture(), any(), any());
@@ -621,7 +622,7 @@
                 false, null, 111,
                 PackageManager.ROLLBACK_USER_IMPACT_LOW);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
         // Make the rollbacks available
@@ -646,7 +647,7 @@
                 false, null, 111,
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
         // Make the rollbacks available
@@ -672,7 +673,7 @@
                 false, null, 111,
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
         // Make the rollbacks available
@@ -701,7 +702,7 @@
                 false, null, 111,
                 PackageManager.ROLLBACK_USER_IMPACT_ONLY_MANUAL);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
         // Make the rollbacks available
@@ -737,7 +738,7 @@
                 false, null, 222,
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
         // Make the rollbacks available
@@ -776,7 +777,7 @@
                 false, null, 222,
                 PackageManager.ROLLBACK_USER_IMPACT_LOW);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -786,7 +787,7 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.executeBootLoopMitigation(1);
+        observer.onExecuteBootLoopMitigation(1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, times(2)).commitRollback(
@@ -821,7 +822,7 @@
                 false, null, 222,
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -831,7 +832,7 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.executeBootLoopMitigation(1);
+        observer.onExecuteBootLoopMitigation(1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, times(1)).commitRollback(
@@ -857,7 +858,7 @@
                 false, null, 111,
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -866,7 +867,7 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.executeBootLoopMitigation(1);
+        observer.onExecuteBootLoopMitigation(1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, times(1)).commitRollback(
@@ -902,7 +903,7 @@
                 PackageManager.ROLLBACK_USER_IMPACT_ONLY_MANUAL);
         VersionedPackage failedPackage = new VersionedPackage(APP_C, VERSION_CODE);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -912,7 +913,8 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.execute(failedPackage, PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
+        observer.onExecuteHealthCheckMitigation(failedPackage,
+                PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, times(1)).commitRollback(
@@ -938,7 +940,7 @@
                 PackageManager.ROLLBACK_USER_IMPACT_ONLY_MANUAL);
         VersionedPackage failedPackage = new VersionedPackage(APP_C, VERSION_CODE);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -947,7 +949,8 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.execute(failedPackage, PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
+        observer.onExecuteHealthCheckMitigation(failedPackage,
+                PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, never()).commitRollback(argument.capture(), any(), any());
@@ -980,7 +983,7 @@
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         VersionedPackage failedPackage = new VersionedPackage(APP_C, VERSION_CODE);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -990,7 +993,7 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.executeBootLoopMitigation(1);
+        observer.onExecuteBootLoopMitigation(1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, times(1)).commitRollback(
@@ -1026,7 +1029,7 @@
                 false, null, 111,
                 PackageManager.ROLLBACK_USER_IMPACT_HIGH);
         RollbackPackageHealthObserver observer =
-                spy(new RollbackPackageHealthObserver(mMockContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mMockContext));
         ArgumentCaptor<Integer> argument = ArgumentCaptor.forClass(Integer.class);
 
         when(mMockContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
@@ -1036,7 +1039,7 @@
         when(mMockContext.getPackageManager()).thenReturn(mMockPackageManager);
         when(mMockPackageManager.getModuleInfo(any(), eq(0))).thenReturn(null);
 
-        observer.executeBootLoopMitigation(1);
+        observer.onExecuteBootLoopMitigation(1);
         waitForIdleHandler(observer.getHandler(), Duration.ofSeconds(10));
 
         verify(mRollbackManager, never()).commitRollback(
diff --git a/services/tests/servicestests/Android.bp b/services/tests/servicestests/Android.bp
index 5b35af1..f165667 100644
--- a/services/tests/servicestests/Android.bp
+++ b/services/tests/servicestests/Android.bp
@@ -96,7 +96,10 @@
         "CtsVirtualDeviceCommonLib",
         "com_android_server_accessibility_flags_lib",
         "locksettings_flags_lib",
-    ],
+    ] + select(soong_config_variable("ANDROID", "release_crashrecovery_module"), {
+        "true": ["service-crashrecovery.impl"],
+        default: [],
+    }),
 
     libs: [
         "android.hardware.power-V1-java",
diff --git a/tests/PackageWatchdog/Android.bp b/tests/PackageWatchdog/Android.bp
index 096555e..91483eb 100644
--- a/tests/PackageWatchdog/Android.bp
+++ b/tests/PackageWatchdog/Android.bp
@@ -35,7 +35,13 @@
         "services.core",
         "services.net",
         "truth",
-    ],
+    ] + select(soong_config_variable("ANDROID", "release_crashrecovery_module"), {
+        "true": [
+            "service-crashrecovery.impl",
+            "framework-crashrecovery.impl",
+        ],
+        default: [],
+    }),
     libs: ["android.test.runner.stubs.system"],
     jni_libs: [
         // mockito-target-extended dependencies
diff --git a/tests/PackageWatchdog/src/com/android/server/CrashRecoveryTest.java b/tests/PackageWatchdog/src/com/android/server/CrashRecoveryTest.java
index 8d143b6..05a0f8f 100644
--- a/tests/PackageWatchdog/src/com/android/server/CrashRecoveryTest.java
+++ b/tests/PackageWatchdog/src/com/android/server/CrashRecoveryTest.java
@@ -224,39 +224,39 @@
         PackageWatchdog watchdog = createWatchdog();
         RescuePartyObserver rescuePartyObserver = setUpRescuePartyObserver(watchdog);
 
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(1);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(1);
 
         for (int i = 0; i < PackageWatchdog.DEFAULT_BOOT_LOOP_TRIGGER_COUNT; i++) {
             watchdog.noteBoot();
         }
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(1);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(2);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(1);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(2);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(2);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(3);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(2);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(3);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(3);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(4);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(3);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(4);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(4);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(5);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(4);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(5);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(5);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(6);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(5);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(6);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(6);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(7);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(6);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(7);
     }
 
     @Test
@@ -265,14 +265,14 @@
         RollbackPackageHealthObserver rollbackObserver =
                 setUpRollbackPackageHealthObserver(watchdog);
 
-        verify(rollbackObserver, never()).executeBootLoopMitigation(1);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(1);
 
         for (int i = 0; i < PackageWatchdog.DEFAULT_BOOT_LOOP_TRIGGER_COUNT; i++) {
             watchdog.noteBoot();
         }
 
-        verify(rollbackObserver).executeBootLoopMitigation(1);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(2);
+        verify(rollbackObserver).onExecuteBootLoopMitigation(1);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(2);
 
         // Update the list of available rollbacks after executing bootloop mitigation once
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(ROLLBACK_INFO_HIGH,
@@ -280,15 +280,15 @@
 
         watchdog.noteBoot();
 
-        verify(rollbackObserver).executeBootLoopMitigation(2);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(3);
+        verify(rollbackObserver).onExecuteBootLoopMitigation(2);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(3);
 
         // Update the list of available rollbacks after executing bootloop mitigation once
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(ROLLBACK_INFO_MANUAL));
 
         watchdog.noteBoot();
 
-        verify(rollbackObserver, never()).executeBootLoopMitigation(3);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(3);
     }
 
     @Test
@@ -299,61 +299,61 @@
         RollbackPackageHealthObserver rollbackObserver =
                 setUpRollbackPackageHealthObserver(watchdog);
 
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(1);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(1);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(1);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(1);
         for (int i = 0; i < PackageWatchdog.DEFAULT_BOOT_LOOP_TRIGGER_COUNT; i++) {
             watchdog.noteBoot();
         }
-        verify(rescuePartyObserver).executeBootLoopMitigation(1);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(2);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(1);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(1);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(2);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(1);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(2);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(3);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(2);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(2);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(3);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(2);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(3);
-        verify(rollbackObserver).executeBootLoopMitigation(1);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(2);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(3);
+        verify(rollbackObserver).onExecuteBootLoopMitigation(1);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(2);
         // Update the list of available rollbacks after executing bootloop mitigation once
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(ROLLBACK_INFO_HIGH,
                 ROLLBACK_INFO_MANUAL));
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(3);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(4);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(2);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(3);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(4);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(2);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(4);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(5);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(2);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(4);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(5);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(2);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(5);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(6);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(2);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(5);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(6);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(2);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(6);
-        verify(rollbackObserver).executeBootLoopMitigation(2);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(3);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(6);
+        verify(rollbackObserver).onExecuteBootLoopMitigation(2);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(3);
         // Update the list of available rollbacks after executing bootloop mitigation
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(ROLLBACK_INFO_MANUAL));
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(6);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(7);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(3);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(6);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(7);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(3);
 
         moveTimeForwardAndDispatch(PackageWatchdog.DEFAULT_DEESCALATION_WINDOW_MS + 1);
         Mockito.reset(rescuePartyObserver);
@@ -361,8 +361,8 @@
         for (int i = 0; i < PackageWatchdog.DEFAULT_BOOT_LOOP_TRIGGER_COUNT; i++) {
             watchdog.noteBoot();
         }
-        verify(rescuePartyObserver).executeBootLoopMitigation(1);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(2);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(1);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(2);
     }
 
     @Test
@@ -373,37 +373,37 @@
         RollbackPackageHealthObserver rollbackObserver =
                 setUpRollbackPackageHealthObserver(watchdog);
 
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(1);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(1);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(1);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(1);
         for (int i = 0; i < PackageWatchdog.DEFAULT_BOOT_LOOP_TRIGGER_COUNT; i++) {
             watchdog.noteBoot();
         }
-        verify(rescuePartyObserver).executeBootLoopMitigation(1);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(2);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(1);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(1);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(2);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(1);
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(2);
-        verify(rollbackObserver).executeBootLoopMitigation(1);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(2);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(2);
+        verify(rollbackObserver).onExecuteBootLoopMitigation(1);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(2);
         // Update the list of available rollbacks after executing bootloop mitigation once
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(ROLLBACK_INFO_HIGH,
                 ROLLBACK_INFO_MANUAL));
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(2);
-        verify(rollbackObserver).executeBootLoopMitigation(2);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(3);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(2);
+        verify(rollbackObserver).onExecuteBootLoopMitigation(2);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(3);
         // Update the list of available rollbacks after executing bootloop mitigation
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(ROLLBACK_INFO_MANUAL));
 
         watchdog.noteBoot();
 
-        verify(rescuePartyObserver).executeBootLoopMitigation(2);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(3);
-        verify(rollbackObserver, never()).executeBootLoopMitigation(3);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(2);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(3);
+        verify(rollbackObserver, never()).onExecuteBootLoopMitigation(3);
 
         moveTimeForwardAndDispatch(PackageWatchdog.DEFAULT_DEESCALATION_WINDOW_MS + 1);
         Mockito.reset(rescuePartyObserver);
@@ -411,8 +411,8 @@
         for (int i = 0; i < PackageWatchdog.DEFAULT_BOOT_LOOP_TRIGGER_COUNT; i++) {
             watchdog.noteBoot();
         }
-        verify(rescuePartyObserver).executeBootLoopMitigation(1);
-        verify(rescuePartyObserver, never()).executeBootLoopMitigation(2);
+        verify(rescuePartyObserver).onExecuteBootLoopMitigation(1);
+        verify(rescuePartyObserver, never()).onExecuteBootLoopMitigation(2);
     }
 
     @Test
@@ -435,46 +435,46 @@
                 Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: SCOPED_DEVICE_CONFIG_RESET
-        verify(rescuePartyObserver).execute(versionedPackageA,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
-        verify(rescuePartyObserver, never()).execute(versionedPackageA,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
-        verify(rollbackObserver, never()).execute(versionedPackageA,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: ALL_DEVICE_CONFIG_RESET
-        verify(rescuePartyObserver).execute(versionedPackageA,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
-        verify(rescuePartyObserver, never()).execute(versionedPackageA,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 3);
-        verify(rollbackObserver, never()).execute(versionedPackageA,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: WARM_REBOOT
-        verify(rescuePartyObserver).execute(versionedPackageA,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 3);
-        verify(rescuePartyObserver, never()).execute(versionedPackageA,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 4);
-        verify(rollbackObserver, never()).execute(versionedPackageA,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: Low impact rollback
-        verify(rollbackObserver).execute(versionedPackageA,
+        verify(rollbackObserver).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
-        verify(rescuePartyObserver, never()).execute(versionedPackageA,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 4);
 
         // update available rollbacks to mock rollbacks being applied after the call to
-        // rollbackObserver.execute
+        // rollbackObserver.onExecuteHealthCheckMitigation
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(
                 List.of(ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL));
 
@@ -482,9 +482,9 @@
                 Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // DEFAULT_MAJOR_USER_IMPACT_LEVEL_THRESHOLD reached. No more mitigations applied
-        verify(rescuePartyObserver, never()).execute(versionedPackageA,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 4);
-        verify(rollbackObserver, never()).execute(versionedPackageA,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
     }
 
@@ -510,24 +510,24 @@
                 Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: WARM_REBOOT
-        verify(rescuePartyObserver).execute(versionedPackageA,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
-        verify(rescuePartyObserver, never()).execute(versionedPackageA,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
-        verify(rollbackObserver, never()).execute(versionedPackageA,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: Low impact rollback
-        verify(rollbackObserver).execute(versionedPackageA,
+        verify(rollbackObserver).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
-        verify(rescuePartyObserver, never()).execute(versionedPackageA,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
 
         // update available rollbacks to mock rollbacks being applied after the call to
-        // rollbackObserver.execute
+        // rollbackObserver.onExecuteHealthCheckMitigation
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(
                 List.of(ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL));
 
@@ -535,9 +535,9 @@
                 Arrays.asList(versionedPackageA), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // DEFAULT_MAJOR_USER_IMPACT_LEVEL_THRESHOLD reached. No more mitigations applied
-        verify(rescuePartyObserver, never()).execute(versionedPackageA,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
-        verify(rollbackObserver, never()).execute(versionedPackageA,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageA,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
     }
 
@@ -567,48 +567,48 @@
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: SCOPED_DEVICE_CONFIG_RESET
-        verify(rescuePartyObserver).execute(versionedPackageUi,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: ALL_DEVICE_CONFIG_RESET
-        verify(rescuePartyObserver).execute(versionedPackageUi,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 3);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: WARM_REBOOT
-        verify(rescuePartyObserver).execute(versionedPackageUi,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 3);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 4);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: Low impact rollback
-        verify(rollbackObserver).execute(versionedPackageUi,
+        verify(rollbackObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 4);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
 
         // update available rollbacks to mock rollbacks being applied after the call to
-        // rollbackObserver.execute
+        // rollbackObserver.onExecuteHealthCheckMitigation
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(
                 List.of(ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL));
 
@@ -616,44 +616,44 @@
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: RESET_SETTINGS_UNTRUSTED_DEFAULTS
-        verify(rescuePartyObserver).execute(versionedPackageUi,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 4);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 5);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: RESET_SETTINGS_UNTRUSTED_CHANGES
-        verify(rescuePartyObserver).execute(versionedPackageUi,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 5);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 6);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: RESET_SETTINGS_TRUSTED_DEFAULTS
-        verify(rescuePartyObserver).execute(versionedPackageUi,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 6);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 7);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: Factory reset. High impact rollbacks are performed only for boot loops.
-        verify(rescuePartyObserver).execute(versionedPackageUi,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 7);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 8);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
     }
 
@@ -685,26 +685,26 @@
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: WARM_REBOOT
-        verify(rescuePartyObserver).execute(versionedPackageUi,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
 
         raiseFatalFailureAndDispatch(watchdog,
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: Low impact rollback
-        verify(rollbackObserver).execute(versionedPackageUi,
+        verify(rollbackObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 1);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
 
         // update available rollbacks to mock rollbacks being applied after the call to
-        // rollbackObserver.execute
+        // rollbackObserver.onExecuteHealthCheckMitigation
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(
                 List.of(ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL));
 
@@ -712,17 +712,17 @@
                 Arrays.asList(versionedPackageUi), PackageWatchdog.FAILURE_REASON_APP_CRASH);
 
         // Mitigation: Factory reset. High impact rollbacks are performed only for boot loops.
-        verify(rescuePartyObserver).execute(versionedPackageUi,
+        verify(rescuePartyObserver).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
-        verify(rescuePartyObserver, never()).execute(versionedPackageUi,
+        verify(rescuePartyObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 3);
-        verify(rollbackObserver, never()).execute(versionedPackageUi,
+        verify(rollbackObserver, never()).onExecuteHealthCheckMitigation(versionedPackageUi,
                 PackageWatchdog.FAILURE_REASON_APP_CRASH, 2);
     }
 
     RollbackPackageHealthObserver setUpRollbackPackageHealthObserver(PackageWatchdog watchdog) {
         RollbackPackageHealthObserver rollbackObserver =
-                spy(new RollbackPackageHealthObserver(mSpyContext, mApexManager));
+                spy(new RollbackPackageHealthObserver(mSpyContext));
         when(mSpyContext.getSystemService(RollbackManager.class)).thenReturn(mRollbackManager);
         when(mRollbackManager.getAvailableRollbacks()).thenReturn(List.of(ROLLBACK_INFO_LOW,
                 ROLLBACK_INFO_HIGH, ROLLBACK_INFO_MANUAL));
@@ -785,7 +785,7 @@
         Handler handler = new Handler(mTestLooper.getLooper());
         PackageWatchdog watchdog =
                 new PackageWatchdog(mSpyContext, policyFile, handler, handler, controller,
-                        mConnectivityModuleConnector, mTestClock);
+                        mTestClock);
         mockCrashRecoveryProperties(watchdog);
 
         // Verify controller is not automatically started
diff --git a/tests/PackageWatchdog/src/com/android/server/ExplicitHealthCheckServiceTest.java b/tests/PackageWatchdog/src/com/android/server/ExplicitHealthCheckServiceTest.java
index 2fbfeba..cd2ab86 100644
--- a/tests/PackageWatchdog/src/com/android/server/ExplicitHealthCheckServiceTest.java
+++ b/tests/PackageWatchdog/src/com/android/server/ExplicitHealthCheckServiceTest.java
@@ -35,6 +35,8 @@
 
     private ExplicitHealthCheckService mExplicitHealthCheckService;
     private static final String PACKAGE_NAME = "com.test.package";
+    private static final String EXTRA_HEALTH_CHECK_PASSED_PACKAGE =
+            "android.service.watchdog.extra.health_check_passed_package";
 
     @Before
     public void setup() throws Exception {
@@ -50,7 +52,7 @@
         IBinder binder = mExplicitHealthCheckService.onBind(new Intent());
         CountDownLatch countDownLatch = new CountDownLatch(1);
         RemoteCallback callback = new RemoteCallback(result -> {
-            assertThat(result.get(ExplicitHealthCheckService.EXTRA_HEALTH_CHECK_PASSED_PACKAGE))
+            assertThat(result.get(EXTRA_HEALTH_CHECK_PASSED_PACKAGE))
                     .isEqualTo(PACKAGE_NAME);
             countDownLatch.countDown();
         });
diff --git a/tests/PackageWatchdog/src/com/android/server/PackageWatchdogTest.java b/tests/PackageWatchdog/src/com/android/server/PackageWatchdogTest.java
index 0364781a..a540a8d 100644
--- a/tests/PackageWatchdog/src/com/android/server/PackageWatchdogTest.java
+++ b/tests/PackageWatchdog/src/com/android/server/PackageWatchdogTest.java
@@ -1754,7 +1754,7 @@
         Handler handler = new Handler(mTestLooper.getLooper());
         PackageWatchdog watchdog =
                 new PackageWatchdog(mSpyContext, policyFile, handler, handler, controller,
-                        mConnectivityModuleConnector, mTestClock);
+                         mTestClock);
         mockCrashRecoveryProperties(watchdog);
 
         // Verify controller is not automatically started
@@ -1869,8 +1869,8 @@
             return mImpact;
         }
 
-        public boolean execute(VersionedPackage versionedPackage, int failureReason,
-                int mitigationCount) {
+        public boolean onExecuteHealthCheckMitigation(VersionedPackage versionedPackage,
+                int failureReason, int mitigationCount) {
             mMitigatedPackages.add(versionedPackage.getPackageName());
             mMitigationCounts.add(mitigationCount);
             mLastFailureReason = failureReason;
@@ -1893,7 +1893,7 @@
             return mImpact;
         }
 
-        public boolean executeBootLoopMitigation(int level) {
+        public boolean onExecuteBootLoopMitigation(int level) {
             mMitigatedBootLoop = true;
             mBootMitigationCounts.add(level);
             return true;