1digraph { 2 graph[bgcolor=white] 3 node[shape=box] 4 5 component[label="Is it a\ncomponent\nbuild?"] 6 target_fanout[label="What target?"] 7 disabled_lacking_pae[label="PA-E is not\navailable"] 8 9 component->disabled_lacking_pae[label="yes"] 10 component->target_fanout[label="no"] 11 12 is_asan[label="Is the build\nASan?"] 13 disabled_in_asan[label="disabled per\ncrbug/1413674"] 14 is_bot[label="Is this a bot?"] 15 browser_tests_enabled[label="BRP is live by default via\ntesting/variations/fieldtrial_testing_config.json"] 16 is_chrome_branded[label="is_chrome_branded?"] 17 enabled_by_feature[label="enabled on most platforms via\npartition_alloc_features.cc"] 18 enabled_by_field_trial[label="enabled by default via\nfieldtrial_testing_config.json"] 19 enabled_in_unit_tests[label="enabled by default via\nenable_backup_ref_ptr_feature_flag"] 20 21 target_fanout->is_asan[label="unit\ntest"] 22 target_fanout->browser_tests_enabled[label="browser\ntest"] 23 target_fanout->is_chrome_branded[label="Chromium\ntarget"] 24 25 is_asan->is_bot[label="no"] 26 is_asan->disabled_in_asan[label="yes"] 27 disabled_in_asan->noop 28 browser_tests_enabled->live_brp 29 is_chrome_branded->enabled_by_feature[label="yes"] 30 is_chrome_branded->enabled_by_field_trial[label="no"] 31 32 {rank=same noop, inert_brp, live_brp} 33 noop[label="raw_ptr is\nRawPtrNoOpImpl"] 34 live_brp[label="BRP is live"] 35 inert_brp[label="BRP is inert"] 36 unit_tests_inert_brp[label="BRP is inert by\ndefault; enable with\nenable_backup_ref_ptr_feature_flag"] 37 38 disabled_lacking_pae->noop 39 is_bot->enabled_in_unit_tests[label="yes"] 40 is_bot->unit_tests_inert_brp[label="no"] 41 42 enabled_in_unit_tests->live_brp 43 unit_tests_inert_brp->inert_brp 44 enabled_by_feature->live_brp 45 enabled_by_field_trial->live_brp 46} 47