Changelog

Publish Everywhere, Sound Better, Move Faster

This week delivers full podcast distribution to major directories, auto-publishing so episodes go live without manual steps, cloud-rendered social video clips, and a wave of audio quality and script improvements.

This has been one of the most feature-dense weeks yet. Podcasts can now be distributed to major podcast directories with a single click, episodes can publish themselves automatically after audio generation completes, and your social clips can render in the cloud in parallel. On top of that, we tackled script repetition, audio loudness mismatches, and a stubborn Gemini TTS reliability issue that was causing production failures.

New Features

Distribute Your Podcast to Major Directories

You can now submit your podcast to Apple Podcasts, Spotify, and other major directories directly from your podcast settings. The new Distribution section handles show syncing, episode publishing, and ongoing status tracking - all without leaving the platform. Once your podcast is listed, a cron job periodically checks for status updates and sends you an email notification when your show appears in a new directory. Platform links also show up on your public show and episode pages so listeners can find you wherever they listen.

Auto-Publish Episodes to Your Website

There's a new toggle in your podcast's distribution settings: "Auto-Publish to Website." When enabled, episodes automatically become publicly visible on your website the moment audio generation finishes - no manual publishing step needed. Turn it off if you prefer to review and publish episodes yourself.

Cloud-Rendered Social Video Clips

Social clip rendering now runs in the cloud using AWS Lambda, which means multiple clips render in parallel instead of one at a time. A full batch of three clips that previously would have taken significantly longer now renders in a fraction of the time. Clips are stored in S3 with public playback support, and the download button now correctly saves the file to your device.

In-App Support Chat

The Intercom messenger is now available throughout the app. Signed-in users are automatically verified with a secure token that includes your plan and account details, which helps the support team give you faster, more contextual answers. The chat bubble is available to logged-in users and anonymous visitors on the marketing site alike.

Visual Social Clip Gallery with Inline Playback

The social content batch detail page has been redesigned from a table list into a visual card grid. Each clip shows a blurred thumbnail preview with a centered play button. Clicking play loads the clip inline directly in the card - no separate page navigation needed. A context menu on each card gives you quick access to open, download, or delete any clip.

Improvements

Sharper, More Varied Podcast Scripts

We tackled a common complaint about podcast scripts feeling repetitive across segments. The AI now tracks phrases and facts it has already used and actively avoids restating them in later segments. Transitions between segments rotate through six distinct styles (question bridge, thematic link, contrast pivot, energy shift, cliffhanger, direct cut) so the show doesn't fall into a predictable rhythm. Solo host episodes also get specific rhetorical coaching - the script now incorporates perspective shifts, direct address, and natural self-dialogue to keep monologue sections engaging.

Consistent Audio Loudness Across Your Entire Episode

Custom audio assets (intro jingles, transition sounds, outro music) are now loudness-normalized to match the level of AI-generated speech. Previously, professionally mastered audio files could be dramatically louder than the spoken content, creating a jarring listening experience. All assets are now normalized to -16 LUFS, matching podcast industry standards, and a final normalization pass is applied to the complete episode mix before delivery.

More Resilient Gemini Text-to-Speech

The Gemini TTS backend can now automatically recover from common failure modes. If one region or model isn't working, it falls back to alternates in sequence. You can also configure which backend, model, region, and chunk size Gemini uses via environment variables, giving you fine-grained control when you need it. A fix also prevents the SDK from silently routing requests to the wrong backend when certain environment variables are present, which was causing 401 errors in production.

Background Reactions Only Where They Make Sense

Background audio reactions (the subtle "mm-hmm" and "right" sounds) are now only generated for multi-host podcasts. Solo episodes no longer receive them, which produced awkward or distorted audio. Short background clips that would have caused distortion are also now skipped gracefully rather than including garbled audio in your episode.

Faster, Smoother Script Editor

Editing long scripts no longer causes the sidebar to flicker or fall out of sync with the document. The editor now computes a single debounced snapshot of the document and shares it across the sidebar, dirty-state tracking, and decoration logic - eliminating the redundant work that was causing visible stutter during typing.

AI Structured Output Reliability

Fixed a compatibility issue between our schema definitions and OpenAI's structured output API that was causing episode outline generation to fail with a "Missing 'episodeArc'" error. Optional fields across the outline, segment, and persona extractors are now defined in a way that satisfies both OpenAI and Anthropic's requirements simultaneously.

Bug Fixes

Fixed a migration issue that had made previously published episodes invisible on public podcast pages. Episodes that were completed before a recent schema change are now correctly restored to published status.

Fixed a bug where the distribution pipeline would crash when the API returned a response in a slightly different shape than expected. The response is now normalized at runtime before processing.

Fixed an issue where artwork uploaded directly by users was not being used when syncing podcasts to distribution platforms. The system now correctly prefers your uploaded cover art over the auto-generated version.

Fixed CSRF middleware incorrectly blocking episode lifecycle API calls. The episode, persona, and internal API routes now have the correct bypass configuration.

Fixed Gemini TTS truncation detection that was triggering excessive retries when audio was actually complete. The system now only treats a non-standard finish reason as a problem when the audio duration is meaningfully short of what was expected.