Add a V->U restore allowlist/denylist

A package is eligible for V to U downgrade restore if either:
- The package has restoreAnyVersion set to false and is part of the V to U allowst
- The package has restoreAnyVersion set to true and is not part of the denylist

Bug : 324233962
Test: atest PerformUnifiedRestoreTaskTest
      Manual:check that a package with restoreanyversion=true
      is not restored if in the denylist,
      check that a package with restoreanyversion=false
      is restored if in the allowlist

Change-Id: Id1cf031c593730132ebe24ecab0ffc4a3f87920e
diff --git a/services/backup/flags.aconfig b/services/backup/flags.aconfig
index 71f2b9e..e9f959f 100644
--- a/services/backup/flags.aconfig
+++ b/services/backup/flags.aconfig
@@ -35,6 +35,15 @@
 }
 
 flag {
+    name: "enable_v_to_u_restore_for_system_components_in_allowlist"
+    namespace: "onboarding"
+    description: "Enables system components to opt in to support restore in V to U downgrade "
+            "scenario without opting in for restoreAnyVersion."
+    bug: "324233962"
+    is_fixed_read_only: true
+}
+
+flag {
     name: "enable_increase_datatypes_for_agent_logging"
     namespace: "onboarding"
     description: "Increase the number of a supported datatypes that an agent can define for its "