0.2.57 (2026-05-22) ------------------- - Added Voxhelm speaker diarization configuration via ``CAST_VOXHELM_DIARIZATION_ENABLED`` and the site-level Wagtail Voxhelm settings. The default remains disabled and the Voxhelm ``diarization`` job payload is only sent when explicitly enabled. Enable it only when the Voxhelm backend has diarization configured; full-episode diarization can be slow and should run through the transcript worker. Diarized jobs use a distinct ``task_ref`` suffix so they do not reuse earlier non-diarized Voxhelm jobs. - Added podcast episode contributors with contributor snippets, ordered host/guest assignments, episode-page context, and item-level ``podcast:person`` feed output. The uniqueness constraint on episode contributors covers ``(episode, contributor, role)``, so the same person may be credited as both host and guest on one episode. - Contributor avatars are rendered through a ``fill-80x80|format-webp`` rendition on episode pages and in ``podcast:person`` feed items, and the rendition URL is precomputed in the post repository so detail and feed rendering remain query-free, including mixed post/episode querysets. - Added a top-level Wagtail admin menu item for contributors. - The episode contributor link field in the Wagtail admin now updates per contributor assignment and only offers links belonging to the selected contributor. - Added Wagtail transcript editing support for mapping diarization speaker labels such as ``Speaker 1`` to an episode contributor. The admin workflow rewrites Podlove and DOTe transcript speaker fields while leaving WebVTT unchanged. - Transcript speaker mapping now uses draft episode contributor assignments, so editors can map speakers before publishing an unfinished episode. - The Podlove player API (``/api/audios/podlove//``) now includes a top-level ``contributors`` list derived from non-blank transcript ``speaker`` and ``voice`` labels in first-appearance order. Podlove Web Player resolves transcript segment speakers against these contributor entries and renders their names. The existing ``transcripts`` payload is unchanged and the Podlove transcript file is read once per response. - Fixed the Wagtail page action menu styling for transcript generation while keeping transcript status and edit links visible to editors. - Full page ``Post.serve()`` calls and Wagtail previews now expose ``render_detail=True`` to templates by default. Callers can still pass ``render_detail=False`` explicitly for overview-style rendering. - Feed repository construction now primes ``lastBuildDate`` from the newest visible post in the feed queryset instead of relying on queryset iteration order. - Custom themes that override episode body templates should render ``episode_contributors`` or include ``cast/contributors.html`` to show public episode credits.