Newsletter: roll out the modernized dashboard to 100%#50091
Conversation
Completes the staged rollout from #49036: the modernized Newsletter wp-admin dashboard, wp-admin subscriber management, and the retired Calypso Subscribers submenu now default on for every site. Removes the staged-rollout scaffolding in favor of a plain `true` default — the MODERNIZATION_ROLLOUT_PERCENTAGE constant, the is_modernization_rollout_enabled() cohort helper (a12s carve-out + wpcom-blog-ID bucket math), the inline mirror in jetpack-mu-wpcom, and the method_exists-guarded delegations at the Jetpack-plugin call sites. Hosts (and a11ns who want the legacy view back) can still opt out with the rsm_jetpack_ui_modernization_newsletter / jetpack_wp_admin_subscriber_management_enabled filters. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Are you an Automattician? Please test your changes on all WordPress.com environments to help mitigate accidental explosions.
Interested in more tips and information?
|
|
Thank you for your PR! When contributing to Jetpack, we have a few suggestions that can help us test and review your patch:
This comment will be updated as you work on your PR and make changes. If you think that some of those checks are not needed for your PR, please explain why you think so. Thanks for cooperation 🤖 Follow this PR Review Process:
If you have questions about anything, reach out in #jetpack-developers for guidance! Jetpack plugin: The Jetpack plugin has different release cadences depending on the platform:
If you have any questions about the release process, please ask in the #jetpack-releases channel on Slack. |
Code Coverage SummaryCoverage changed in 5 files.
Full summary · PHP report · JS report If appropriate, add one of these labels to override the failing coverage check:
Covered by non-unit tests
|
Fixes #
Completes the staged rollout that #49036 set up (and that closed #48530). #49036 introduced the cohort gate held at 0% on the Jetpack side while the Simple-site rollout ran from the WordPress.com backend. With that cohort validated, this PR takes the Jetpack/Atomic side to 100% and removes the now-unneeded scaffolding.
Proposed changes
trueinstead of the cohort result:rsm_jetpack_ui_modernization_newsletter— the canonical gate for the wp-build dashboard (applied inNewsletter\Settings::is_modernized(), thewpcom/v2/subscribers/*REST route registration, thesubscriptionsmodule menu, and the jetpack-mu-wpcom admin menu).jetpack_wp_admin_subscriber_management_enabled— applied in the Newsletter script data, thesubscriptionsmodule menu, and the Jetpack Redux state.true:Newsletter\Settings::MODERNIZATION_ROLLOUT_PERCENTAGEandis_modernization_rollout_enabled()(the Automattician carve-out + the wpcom-blog-ID% 100bucket math).wpcom-admin-menu.php.method_exists-guarded cross-package delegations at the three Jetpack-plugin call sites (they now pass a literaltrue, so there's no sibling-package call left to guard).is_automattician()test stub in the newsletter package bootstrap and the cohort/a12s unit tests; the remaining tests assert the newtruedefault and the host opt-out.add_filter( 'rsm_jetpack_ui_modernization_newsletter', '__return_false' )/add_filter( 'jetpack_wp_admin_subscriber_management_enabled', '__return_false' ).MODERNIZATION_FILTERconstants are separate flags and are intentionally untouched.Related product discussion/links
Does this pull request change what data or activity we track or use?
No.
Testing instructions
GET /wpcom/v2/subscribers/listis registered (returns a data /401response, notrest_no_route).add_filter( 'rsm_jetpack_ui_modernization_newsletter', '__return_false' );restores the legacy Settings screen and the legacy Calypso Subscribers submenu;add_filter( 'jetpack_wp_admin_subscriber_management_enabled', '__return_false' );restores the legacy subscriber-management default.composer phpunitinprojects/packages/newsletter(42 tests) and--filter WPCOM_Admin_Menu_Testinprojects/packages/jetpack-mu-wpcomboth pass.🤖 Generated with Claude Code