Storybook is excellent at exercising components. Many production regressions live between them:
- A global navigation change steals horizontal space from translated labels.
- Real authentication selects a permission branch no story renders.
- API data creates a density and wrapping pattern fixtures missed.
- Route-level styles override a component token.
- A feature flag combines two individually correct components incorrectly.
- Loading, empty, and error states transition in the wrong order.
Add a journey-level release check
Keep component snapshots for fast feedback. Then identify the authenticated flows whose visible result matters to a release and capture them in the real application shell.
Run the meaningful role, theme, locale, viewport, and data contexts on every change. Present only changed before-and-after results and require a decision before merge.
The lesson is not that Storybook failed. It answered its question correctly. The bug survived because the release needed a second question: does the whole product journey still look right?

