feat: #3622954 A podcast is a show with episodes: add the Podcast episode content type and the views that list both
Closes #3622954.
Makes Podcast the show (cover, description, host, "Listen on" links) and adds a Podcast episode content type with a required podcast reference. The podcasts and podcast_episodes views list shows and a show's episodes, with Canvas templates, paths, permissions and workflow for the new type. Tests and fixtures move to the new model.
This changes the data model with no upgrade path. Existing podcast nodes, which are episodes today, are not migrated, so this likely belongs in a new major.
Functional suite green locally: 46/46 scenarios on a Varbase Starter site (CI command, --retry 1, @external excluded). Validate stage green with gitlab-ci-local.
Related: #3627494, the RightUp pages for this model.
AI-Generated: Yes
Checkpoints:
- File an issue
- Addition/Change/Update/Fix
- Testing to ensure no regression
- Automated unit testing coverage
- Automated functional testing coverage
- UX/UI designer responsibilities
- Readability
- Accessibility
- Performance
- Security
- Developer Documentation
- User Guide Documentation
- Reviewed by human
- Code review by maintainers
- Full testing and approval
- Credit contributors
- Review with the product owner
- Release notes snippet
- Release