Podcast: one-click Pocket Casts submit#48694
Conversation
|
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! |
Code Coverage SummaryThis PR did not change code coverage! That could be good or bad, depending on the situation. Everything covered before, and still is? Great! Nothing was covered before? Not so great. 🤷 |
55241cc to
aad126e
Compare
Proposed changes
POST /wpcom/v2/sites/{blogId}/podcast-distribution/pocket-casts/submit) — idempotent, rate-limited, derives feed URL server-side.active,pending,rejected,unreachable). Onpending, auto-refreshes once on modal mount; onactive, silently saves the returnedshare_linkintopodcasting_show_urls.pocketcastsso the public-site share buttons and the saved-URL UX in other directories work without a manual paste.podcasting_show_statesto the dashboard (already in the package's PHP schema, just wasn't read on the client). Typed as read-only — only the wpcom endpoint mutates it.Related product discussion/links
Does this pull request change what data or activity we track or use?
Adds two new Tracks events:
jetpack_podcast_pocketcasts_submit_started— user clicks Submit (auto-refreshes are silent). Props:has_stored_state.jetpack_podcast_pocketcasts_submit_completed— fires on every relay response. Props:state(one ofactive/pending/rejected/unreachable).Testing instructions
jetpack_podcast_untanglefilter enabled and a podcasting category set, open Jetpack → Podcast → Distribution.active— green check, share link with copy button, "Done" closes the modal. Reopen the modal and confirm it lands directly on the success view without re-submitting.pending— status copy + "Refresh status" button that re-calls the relay.rejected— error notice with the upstreampcc.feedback.errorslist (if present) and a fallback "Open Pocket Casts" external link.unreachable— warning notice + "Try again".share_linktopodcasting_show_urls.pocketcastsonactive.pendingon mount) — never on every reopen.With the filter off (default) nothing changes — the package stays inert.