blob: 56e8c67787ba48e4bca74863eb6e1b06dfabf462 [file] [log] [blame]
Ned Burns6d480c32023-08-28 12:12:19 -04001package: "com.android.systemui"
Dave Mankofff6a791e2023-07-31 18:03:34 +00002
3flag {
4 name: "example_flag"
5 namespace: "systemui"
6 description: "An Example Flag"
7 bug: "292511372"
Dave Mankoff818186b2023-10-02 17:31:07 +00008}
9
10flag {
11 name: "sysui_teamfood"
12 namespace: "systemui"
13 description: "Enables all the sysui classic flags that are marked as being in teamfood"
14 bug: "302578396"
15}
Ioana Alexandrufeaaa022023-10-06 11:21:48 +020016
17flag {
Beverlyc853b772024-02-16 21:19:27 +000018 name: "udfps_view_performance"
19 namespace: "systemui"
20 description: "Decrease screen off blocking calls by waiting until the device is finished going to sleep before adding the udfps view."
21 bug: "225183106"
22 metadata {
23 purpose: PURPOSE_BUGFIX
24 }
25}
26
27flag {
Yining Liu6ed11b92024-01-18 18:01:51 +080028 name: "notification_async_group_header_inflation"
29 namespace: "systemui"
30 description: "Inflates the notification group summary header views from the background thread."
31 bug: "217799515"
32}
33
34flag {
Yining Liu9a835c82023-10-31 01:30:23 +000035 name: "notification_async_hybrid_view_inflation"
36 namespace: "systemui"
37 description: "Inflates hybrid (single-line) notification views from the background thread."
38 bug: "217799515"
39}
40
41flag {
Jeff DeCew3a819de2023-05-12 12:49:30 -040042 name: "notification_color_update_logger"
43 namespace: "systemui"
44 description: "Enabled debug logging and dumping of notification color updates."
45 bug: "294347738"
46}
47
48flag {
Ioana Alexandrufeaaa022023-10-06 11:21:48 +020049 name: "notifications_footer_view_refactor"
50 namespace: "systemui"
51 description: "Enables the refactored version of the footer view in the notification shade "
52 "(containing the \"Clear all\" button). Should not bring any behavior changes"
53 bug: "293167744"
54}
Alexander Roederer74cda602023-10-11 00:24:09 +000055
56flag {
Steve Elliott34edc352023-10-23 13:14:24 -040057 name: "notifications_icon_container_refactor"
58 namespace: "systemui"
59 description: "Enables the refactored version of the notification icon container in StatusBar, "
60 "AOD, and the notification shelf. Should not bring any behavioral changes."
61 bug: "278765923"
62}
63
64flag {
Nick Chameyev8ea0f4c2023-10-20 18:09:50 +010065 name: "notifications_hide_on_display_switch"
66 namespace: "systemui"
67 description: "Temporary hides notifications when folding/unfolding to reduce unfold latency"
68 bug: "293824309"
69}
70
71flag {
András Kurucz305199f2023-12-18 18:31:34 +000072 name: "notifications_improved_hun_animation"
73 namespace: "systemui"
74 description: "Adds a translateY animation, and other improvements to match the motion specs of the HUN Intro + Outro animations."
75 bug: "243302608"
76}
77
78flag {
Yining Liu49c0d052024-02-22 23:52:59 +000079 name: "notification_content_alpha_optimization"
80 namespace: "systemui"
81 description: "Only reset alpha values of needed content views"
82 bug: "292024656"
83 metadata {
84 purpose: PURPOSE_BUGFIX
85 }
86}
87
88flag {
András Kurucz3e88b352023-11-06 13:48:09 +000089 name: "notifications_live_data_store_refactor"
90 namespace: "systemui"
91 description: "Replaces NotifLiveDataStore with ActiveNotificationListRepository, and updates consumers. "
92 "Should not bring any behavior changes."
93 bug: "308623704"
94}
95
96flag {
Chris Göllner01fc9322024-02-28 16:30:33 +000097 name: "pss_app_selector_abrupt_exit_fix"
98 namespace: "systemui"
99 description: "Fixes the app selector abruptly disappearing without an animation, when the"
100 "selected task is the foreground task."
101 bug: "314385883"
102 metadata {
103 purpose: PURPOSE_BUGFIX
104 }
105}
106
107flag {
Ioana Alexandru7d781c002024-02-20 20:55:53 +0100108 name: "notifications_background_icons"
Ioana Alexandrue37b08f32024-02-15 14:25:39 +0100109 namespace: "systemui"
Ioana Alexandru7d781c002024-02-20 20:55:53 +0100110 description: "Moves part of the notification icon updates to the background."
111 bug: "315143361"
Ioana Alexandrue37b08f32024-02-15 14:25:39 +0100112 metadata {
113 purpose: PURPOSE_BUGFIX
114 }
115}
116
117flag {
Jeff DeCewb811f002024-01-25 17:21:55 +0000118 name: "nssl_falsing_fix"
119 namespace: "systemui"
120 description: "Minor touch changes to prevent falsing errors in NSSL"
121 bug: "316551193"
122 metadata {
123 purpose: PURPOSE_BUGFIX
124 }
125}
126
127flag {
Andreas Miko644f9502023-12-12 17:40:21 +0100128 name: "refactor_get_current_user"
129 namespace: "systemui"
130 description: "KeyguardUpdateMonitor.getCurrentUser() was providing outdated results."
131 bug: "305984787"
132}
133
134flag {
Lyn20c65062023-11-13 20:34:03 +0000135 name: "notification_throttle_hun"
136 namespace: "systemui"
137 description: "During notification avalanche, throttle HUNs showing in fast succession."
138 bug: "307288824"
139}
140
141flag {
Lyn06388cc2024-01-18 22:17:50 +0000142 name: "notification_avalanche_suppression"
143 namespace: "systemui"
144 description: "After notification avalanche floodgate event, suppress HUNs completely."
145 bug: "321089634"
146}
147
148flag {
Jeff DeCew74e8d432023-11-29 19:34:19 +0000149 name: "notification_background_tint_optimization"
150 namespace: "systemui"
151 description: "Re-enable the codepath that removed tinting of notifications when the"
152 " standard background color is desired. This was the behavior before we discovered"
153 " a resources threading issue, which we worked around by tinting the notification"
154 " backgrounds and footer buttons."
Jeff DeCewb45610e2024-01-31 20:46:03 +0000155 bug: "294830092"
Jeff DeCew74e8d432023-11-29 19:34:19 +0000156}
157
158flag {
Ale Nijamkin2e087362023-10-18 00:29:03 +0000159 name: "scene_container"
160 namespace: "systemui"
161 description: "Enables the scene container framework go/flexiglass."
162 bug: "283121968"
163}
Julia Tuttle5201be82023-10-30 17:49:30 -0400164
165flag {
Brad Hinegardner5ded8022023-11-03 16:57:51 +0000166 name: "keyguard_bottom_area_refactor"
167 namespace: "systemui"
168 description: "Bottom area of keyguard refactor move into KeyguardRootView. Includes "
169 "lock icon and others."
170 bug: "290652751"
171}
172
173flag {
Beverly96b3e592023-11-08 15:32:58 +0000174 name: "device_entry_udfps_refactor"
175 namespace: "systemui"
176 description: "Refactoring device entry UDFPS icon to use modern architecture and "
177 "consolidating it with the lock/unlock icon to create a combined DeviceEntryIconView"
178 bug: "279440316"
179}
180
181flag {
Julia Tuttle5201be82023-10-30 17:49:30 -0400182 name: "visual_interruptions_refactor"
183 namespace: "systemui"
184 description: "Enables the refactored version of the code to decide when notifications "
185 "HUN, bubble, pulse, or FSI."
186 bug: "261728888"
187}
Juan Sebastian Martineze95f996b2023-11-01 14:06:47 -0700188
189flag {
190 name: "haptic_brightness_slider"
191 namespace: "systemui"
192 description: "Adds haptic feedback to the brightness slider."
193 bug: "296467915"
194}
Matt Pietal2cfc6842023-11-03 16:41:09 +0000195
196flag {
197 name: "keyguard_shade_migration_nssl"
198 namespace: "systemui"
199 description: "Moves NSSL into a shared element between the notification_panel and "
200 "keyguard_root_view."
201 bug: "278054201"
202}
Fabián Kozynski9385f732023-11-09 12:47:57 -0500203
204flag {
Nicolo' Mazzucato24c5a7c2023-11-20 11:49:17 +0000205 name: "unfold_animation_background_progress"
206 namespace: "systemui"
207 description: "Moves unfold animation progress calculation to a background thread"
208 bug: "277879146"
209}
210
211flag {
Nicolo' Mazzucato9ec7e7c2023-12-28 08:52:46 +0000212 name: "enable_background_keyguard_ondrawn_callback"
213 namespace: "systemui"
214 description: "Calls the onDrawn keyguard in the background, without being blocked by main"
215 "thread work. This results in the screen to turn on earlier when the main thread is stuck. "
216 "Note that, even after this callback is called, we're waiting for all windows to finish "
217 " drawing."
218 bug: "295873557"
Nicolò Mazzucato16eecfa2024-02-05 09:10:08 +0000219 metadata {
220 purpose: PURPOSE_BUGFIX
221 }
Nicolo' Mazzucato9ec7e7c2023-12-28 08:52:46 +0000222}
223
224flag {
Peter Kalauskasfc9ba4a2023-11-13 22:00:33 +0000225 name: "qs_new_pipeline"
226 namespace: "systemui"
227 description: "Use the new pipeline for Quick Settings. Should have no behavior changes."
228 bug: "241772429"
Fabián Kozynski9385f732023-11-09 12:47:57 -0500229}
Peter Kalauskasfc9ba4a2023-11-13 22:00:33 +0000230
231flag {
Anton Potapov10ae1962023-11-13 19:39:59 +0000232 name: "qs_new_tiles"
233 namespace: "systemui"
234 description: "Use the new tiles in the Quick Settings. Should have no behavior changes."
Anton Potapovfecf0bc2024-01-04 10:55:18 +0000235 bug: "311147395"
Anton Potapov10ae1962023-11-13 19:39:59 +0000236}
237
238flag {
Peter Kalauskasfc9ba4a2023-11-13 22:00:33 +0000239 name: "coroutine_tracing"
240 namespace: "systemui"
241 description: "Adds thread-local data to System UI's global coroutine scopes to "
242 "allow for tracing of coroutine continuations using System UI's tracinglib"
243 bug: "289353932"
Andreas Mikoa6c9dae2023-11-14 14:46:21 +0100244}
245
246flag {
Peter Kalauskas62bf22b2023-12-15 01:44:39 +0000247 name: "edge_back_gesture_handler_thread"
248 namespace: "systemui"
249 description: "Moves the EdgeBackGestureHandler window, which is used for rendering the back "
250 "arrow, to a separate thread. Previously, the EdgeBackGestureHandler window would share "
251 "the main thread with the rest of System UI."
252 bug: "304583132"
253}
254
255flag {
Andreas Mikoa6c9dae2023-11-14 14:46:21 +0100256 name: "new_aod_transition"
257 namespace: "systemui"
258 description: "New LOCKSCREEN <=> AOD transition"
259 bug: "301915812"
Andreas Miko980ef672023-11-14 14:49:31 +0100260}
261
262flag {
263 name: "light_reveal_migration"
264 namespace: "systemui"
265 description: "Move LightRevealScrim to recommended architecture"
266 bug: "281655028"
Beth Thibodeau622c4fe2023-11-17 17:12:04 -0600267}
268
269flag {
Marcelo Arteiro2398ebb2023-11-21 13:38:17 +0000270 name: "theme_overlay_controller_wakefulness_deprecation"
271 namespace: "systemui"
272 description: "Replacing WakefulnessLifecycle by KeyguardTransitionInteractor in "
273 "ThemOverlayController to mitigate flickering when locking the device"
274 bug: "308676488"
275}
276
277flag {
Chris Göllner30486e72024-02-07 17:03:08 +0000278 name: "truncated_status_bar_icons_fix"
279 namespace: "systemui"
280 description: "Fixes the status bar icons being trunacted due to the status bar window height "
281 "not being updated after certain rotations"
282 bug: "323299264"
283 metadata {
284 purpose: PURPOSE_BUGFIX
285 }
286}
287
288flag {
Chandru S1df19782023-09-30 18:34:20 -0700289 name: "compose_bouncer"
290 namespace: "systemui"
291 description: "Use the new compose bouncer in SystemUI"
292 bug: "310005730"
293}
294
295flag {
Beth Thibodeau622c4fe2023-11-17 17:12:04 -0600296 name: "media_in_scene_container"
297 namespace: "systemui"
298 description: "Enable media in the scene container framework"
299 bug: "296122467"
300}
Marcelo Arteiro2398ebb2023-11-21 13:38:17 +0000301
Stefan Andonian3f43e1d2023-11-20 22:04:24 +0000302flag {
Chris Göllner0f02ef52023-12-15 10:11:49 +0000303 name: "pss_task_switcher"
304 namespace: "systemui"
305 description: "Enable the task switcher feature for partial screen sharing"
306 bug: "317208379"
307}
308
309flag {
Chandru Sc78f0822023-11-30 15:38:19 +0530310 name: "revamped_bouncer_messages"
311 namespace: "systemui"
312 description: "Change the bouncer message to be a 2-line more descriptive message"
313 bug: "236891644"
314}
315
316flag {
Chandru S7ec7fd22023-11-30 13:12:25 +0530317 name: "rest_to_unlock"
318 namespace: "systemui"
319 description: "Require prolonged touch for fingerprint authentication"
320 bug: "303672286"
321}
322
323flag {
Stefan Andonian3f43e1d2023-11-20 22:04:24 +0000324 name: "record_issue_qs_tile"
325 namespace: "systemui"
326 description: "Replace Record Trace QS Tile with expanded Record Issue QS Tile"
327 bug: "305049544"
328}
Chandru S7ec7fd22023-11-30 13:12:25 +0530329
Aurélien Pomini7c643452023-09-21 10:06:47 +0000330flag {
Sherry Zhou860c9b92023-11-28 17:56:31 +0000331 name: "migrate_clocks_to_blueprint"
332 namespace: "systemui"
333 description: "Move clock related views from KeyguardStatusView to KeyguardRootView, "
334 "and use modern architecture for lockscreen clocks"
335 bug: "301502635"
336}
337
338flag {
Aurélien Pomini7c643452023-09-21 10:06:47 +0000339 name: "fast_unlock_transition"
340 namespace: "systemui"
341 description: "Faster wallpaper unlock transition"
342 bug: "298186160"
343}
Juan Sebastian Martinezc9ff0572023-12-04 15:39:18 -0800344
345flag {
Chris Göllner32aad6c2024-02-16 14:00:31 +0000346 name: "centralized_status_bar_height_fix"
Chris Göllner7a56e772023-12-28 17:51:48 +0000347 namespace: "systemui"
348 description: "Refactors shade header and keyguard status bar to read status bar dimens from a"
349 " central place, instead of reading resources directly. This is to take into account display"
350 " cutouts and other special cases. "
Chris Göllner414e9bc2024-02-19 09:41:22 +0000351 bug: "317016114"
Chris Göllner932714b2024-02-15 14:56:45 +0000352 metadata {
353 purpose: PURPOSE_BUGFIX
354 }
Chris Göllner7a56e772023-12-28 17:51:48 +0000355}
356
357flag {
Nicolo' Mazzucatocd5f25b2023-12-07 10:11:50 +0000358 name: "enable_layout_tracing"
359 namespace: "systemui"
360 description: "Enables detailed traversal slices during measure and layout in perfetto traces"
361 bug: "315274804"
362}
363
364flag {
Juan Sebastian Martinezc9ff0572023-12-04 15:39:18 -0800365 name: "quick_settings_visual_haptics_longpress"
366 namespace: "systemui"
367 description: "Enable special visual and haptic effects for quick settings tiles with long-press actions"
368 bug: "229856884"
369}
Evan Laird3f199372023-11-14 18:32:19 -0500370
371flag {
Aaron Liu688c8232023-12-14 11:55:04 -0800372 name: "switch_user_on_bg"
373 namespace: "systemui"
374 description: "Does user switching on a background thread"
375 bug: "284095720"
376}
377
378flag {
Evan Laird3f199372023-11-14 18:32:19 -0500379 name: "status_bar_static_inout_indicators"
380 namespace: "systemui"
381 description: "(Upstream request) Always show the network activity inout indicators and "
382 "prefer using alpha to distinguish network activity."
383 bug: "310715220"
384}
Juan Sebastian Martineze28f3d22023-12-18 14:55:26 -0800385
386flag {
387 name: "haptic_volume_slider"
388 namespace: "systemui"
389 description: "Adds haptic feedback to the volume slider."
390 bug: "316953430"
391}
Richard MacGregor019df652023-12-18 15:27:36 -0800392
393flag {
Anton Potapov0ccf69a2023-12-21 16:42:40 +0000394 name: "new_volume_panel"
395 namespace: "systemui"
396 description: "Switches to the new volume panel (without Slices)."
397 bug: "202262476"
398}
399
400flag {
Miranda Kephart5b0287b2023-11-20 11:24:03 -0500401 name: "screenshot_action_dismiss_system_windows"
402 namespace: "systemui"
403 description: "Dismiss existing system windows when starting action from screenshot UI"
404 bug: "309933761"
405}
406
407flag {
Beverly0cdcacb2024-01-04 18:40:05 +0000408 name: "run_fingerprint_detect_on_dismissible_keyguard"
409 namespace: "systemui"
410 description: "Run fingerprint detect instead of authenticate if the keyguard is dismissible."
411 bug: "311145851"
412}
413
414flag {
Xiaowen Lei19b52dc2024-01-02 17:47:22 +0000415 name: "smartspace_relocate_to_bottom"
416 namespace: "systemui"
417 description: "Relocate Smartspace to bottom of the Lock Screen"
418 bug: "316212788"
419}
Joshua Mokutfb94bee2024-01-09 23:46:47 +0000420
421flag {
422 name: "pin_input_field_styled_focus_state"
423 namespace: "systemui"
424 description: "Enables styled focus states on pin input field if keyboard is connected"
425 bug: "316106516"
426}
Josh Tsujib2755ca2024-01-18 13:53:11 -0500427
428flag {
429 name: "keyguard_wm_state_refactor"
430 namespace: "systemui"
431 description: "Enables refactored logic for SysUI+WM unlock/occlusion code paths"
432 bug: "278086361"
433}
Aaron Liu972537c2024-01-26 14:35:06 -0800434
435flag {
Aaron Liue51a5d32024-01-30 13:22:41 -0800436 name: "compose_lockscreen"
Aaron Liu972537c2024-01-26 14:35:06 -0800437 namespace: "systemui"
Aaron Liue51a5d32024-01-30 13:22:41 -0800438 description: "Enables the compose version of lockscreen that runs standalone, outside of Flexiglass."
Aaron Liu972537c2024-01-26 14:35:06 -0800439 bug: "301968149"
440}
Zhe Songe2a44482024-01-30 10:50:57 +0000441
442flag {
443 name: "enable_contextual_tip_for_power_off"
444 namespace: "systemui"
445 description: "Enables on-screen contextual tip about how to power off or restart phone"
446 bug: "322891421"
447}
448
449flag {
450 name: "enable_contextual_tip_for_take_screenshot"
451 namespace: "systemui"
452 description: "Enables on-screen contextual tip about how to take screenshot."
453 bug: "322891421"
454}
Yein Jobbfb3312024-01-31 22:40:47 +0000455
456flag {
Yu Chao3964b562024-02-01 08:03:59 +0000457 name: "enable_contextual_tips"
458 description: "Enables showing contextual tips."
459 namespace: "systemui"
460 bug: "322891421"
461}
462
463flag {
Yein Jobbfb3312024-01-31 22:40:47 +0000464 name: "shaderlib_loading_effect_refactor"
465 namespace: "systemui"
466 description: "Extend shader library to provide the common loading effects."
467 bug: "282007590"
468}
469
Matías Hernándeza67952e2024-02-06 15:29:52 +0100470flag {
jasonwshsu8d2f6392024-02-27 23:49:08 +0800471 name: "hearing_aids_qs_tile_dialog"
472 namespace: "systemui"
473 description: "Show a dialog when clicking on hearing aids quick settings tile."
474 bug: "291423171"
475}
476
477flag {
Matías Hernándeza67952e2024-02-06 15:29:52 +0100478 name: "notification_row_user_context"
479 namespace: "systemui"
480 description: "Create a user-specific Context for the ImageResolver in ExpandableNotificationRow"
481 " (based on the NotificationEntry's user)."
482 bug: "317503801"
483 metadata {
484 purpose: PURPOSE_BUGFIX
485 }
486}
487
Devarshi Bhattfdddc972024-02-06 04:52:56 +0000488flag {
489 name: "get_connected_device_name_unsynchronized"
490 namespace: "systemui"
491 description: "Decide whether to fetch the connected bluetooth device name outside a synchronized block."
492 bug: "323995015"
493 metadata {
Sindhu561c2402024-02-07 09:38:47 +0000494 purpose: PURPOSE_BUGFIX
495 }
496}
497
498flag {
Sindhuc5d22842024-02-09 06:47:35 +0000499 name: "slice_manager_binder_call_background"
500 namespace: "systemui"
501 description: "Move the ISliceManager#getPinnedSpecs binder call to the background thread."
502 bug: "322745650"
503 metadata {
504 purpose: PURPOSE_BUGFIX
505 }
506}
507
508flag {
Sindhu561c2402024-02-07 09:38:47 +0000509 name: "register_new_wallet_card_in_background"
510 namespace: "systemui"
511 description: "Decide whether the call to registerNewWalletCards method should be issued on background thread."
512 bug: "322506838"
513 metadata {
514 purpose: PURPOSE_BUGFIX
515 }
Devarshi Bhattfdddc972024-02-06 04:52:56 +0000516}
archishab51923e2024-02-08 05:53:04 +0000517
518flag {
519 name: "update_user_switcher_background"
520 namespace: "systemui"
521 description: "Decide whether to update user switcher in background thread."
522 bug: "322745650"
523 metadata {
524 purpose: PURPOSE_BUGFIX
525 }
526}
Devarshi Bhatt17fa9832024-02-16 06:27:10 +0000527
528flag {
529 name: "register_zen_mode_content_observer_background"
530 namespace: "systemui"
531 description: "Decide whether to register zen mode content observers in the background thread."
532 bug: "324515627"
533 metadata {
534 purpose: PURPOSE_BUGFIX
535 }
536}
Miranda Kephart2976ca82024-02-16 10:14:15 -0500537
538flag {
539 name: "clipboard_noninteractive_on_lockscreen"
540 namespace: "systemui"
541 description: "Prevents the interactive clipboard UI from appearing when device is locked"
542 bug: "317048495"
543 metadata {
544 purpose: PURPOSE_BUGFIX
545 }
546}
Jernej Virag96b48772024-02-20 10:34:27 +0100547
548flag {
549 name: "trim_resources_with_background_trim_at_lock"
550 namespace: "systemui"
551 description: "Trim fonts and other caches when the device locks to lower memory consumption."
552 bug: "322143614"
553 metadata {
554 purpose: PURPOSE_BUGFIX
555 }
556}
Julia Tuttlec22e70f2024-02-14 16:04:59 -0500557
558flag {
559 name: "dedicated_notif_inflation_thread"
560 namespace: "systemui"
561 description: "Create a separate background thread for inflating notifications"
562 bug: "308967184"
563 metadata {
564 purpose: PURPOSE_BUGFIX
565 }
566}
Ibrahim Yilmaz31c681b2024-02-21 11:26:36 +0000567
568flag {
569 name: "bind_keyguard_media_visibility"
570 namespace: "systemui"
571 description: "Binds Keyguard Media Controller Visibility to MediaContainerView"
572 bug: "298213983"
Ibrahim Yilmaz1d1c12c2024-02-29 15:59:20 +0000573 metadata {
574 purpose: PURPOSE_BUGFIX
575 }
Jernej Virag8d4858d2024-02-23 13:18:30 +0100576}
577
578flag {
579 name: "delayed_wakelock_release_on_background_thread"
580 namespace: "systemui"
581 description: "Released delayed wakelocks on background threads to avoid janking screen transitions."
582 bug: "316128516"
Ibrahim Yilmaz31c681b2024-02-21 11:26:36 +0000583 metadata {
584 purpose: PURPOSE_BUGFIX
585 }
586}
bvineeth68756982024-02-23 09:57:28 +0000587
588flag {
589 name: "notify_power_manager_user_activity_background"
590 namespace: "systemui"
591 description: "Decide whether to notify the user activity to power manager in the background thread."
592 bug: "325203885"
593 metadata {
594 purpose: PURPOSE_BUGFIX
595 }
596}
Michael Mikhail1371dbd2024-02-22 17:45:25 +0000597
598flag {
599 name: "media_controls_refactor"
600 namespace: "systemui"
601 description: "Refactors media code to follow the recommended architecture"
602 bug: "326408371"
603}