Notification for wrong HSUM state

It is theoretically possible to flash (without wiping) an HSUM build
onto a device that was hitherto non-HSUM (or vice versa).
In that case, we purposefully leave
the device in the previous mode, since there is no way to safely change
the HSUM state. However, that situation may be confusing to the user,
who may flash the device (or receive an OTA) without realising that a
wipe was required in order to change their HSUM state.

We therefore now show a notification when this happens, instructing the
user to factory reset the device, so that it can get into the correct
HSUM state.

This is only expected to affect experiments/dogfooding. Normally, we do
not expect organizations to OTA between HSUM-non-HSUM builds without
wiping. If an OEM wishes to do this inadvisable activity, they would be
advised to similarly disable this notification.

Test: manual
Bug: 341963779
Flag: EXEMPT bugfix
Change-Id: I620afa7db941c117e93529f408c728b8c1d411c1
diff --git a/proto/src/system_messages.proto b/proto/src/system_messages.proto
index e8db80a..994bdb5 100644
--- a/proto/src/system_messages.proto
+++ b/proto/src/system_messages.proto
@@ -314,6 +314,10 @@
     // Package: com.android.systemui
     NOTE_ADAPTIVE_NOTIFICATIONS = 76;
 
+    // Warn the user that the device's Headless System User Mode status doesn't match the build's.
+    // Package: android
+    NOTE_WRONG_HSUM_STATUS = 77;
+
     // ADD_NEW_IDS_ABOVE_THIS_LINE
     // Legacy IDs with arbitrary values appear below
     // Legacy IDs existed as stable non-conflicting constants prior to the O release