Skip to content

[master] Michijs Dependabot changes#116

Closed
michijs[bot] wants to merge 1 commit into
masterfrom
michijs-dependabot
Closed

[master] Michijs Dependabot changes#116
michijs[bot] wants to merge 1 commit into
masterfrom
michijs-dependabot

Conversation

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump @​michijs/dev-server from 0.8.7 to 0.8.30

Changelog:
Sourced from releases.
        ### 0.8.30**Full Changelog**: https://github.com/michijs/dev-server/compare/0.8.29...0.8.30


        ### 0.8.30-beta.7**Full Changelog**: https://github.com/michijs/dev-server/compare/0.8.29...0.8.30-beta.7


        ### 0.8.30-beta.6**Full Changelog**: https://github.com/michijs/dev-server/compare/0.8.29...0.8.30-beta.6


        ### 0.8.30-beta.5## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.28...0.8.30-beta.5

        ### 0.8.30-beta.4## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.28...0.8.30-beta.4

        ### 0.8.30-beta.3## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.28...0.8.30-beta.3

        ### 0.8.30-beta.2## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.28...0.8.30-beta.2

        ### 0.8.30-beta.1## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.28...0.8.30-beta.1

        ### 0.8.30-beta.0## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.28...0.8.30-beta.0

        ### 0.8.29## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.28...0.8.29

        ### 0.8.28## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.22...0.8.28

        ### 0.8.22**Full Changelog**: https://github.com/michijs/dev-server/compare/0.8.19...0.8.22


        ### 0.8.19**Full Changelog**: https://github.com/michijs/dev-server/compare/0.8.18...0.8.19


        ### 0.8.18**Full Changelog**: https://github.com/michijs/dev-server/compare/0.8.17...0.8.18


        ### 0.8.17## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.16...0.8.17

        ### 0.8.16## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.15...0.8.16

        ### 0.8.15**Full Changelog**: https://github.com/michijs/dev-server/compare/v0.8.14...0.8.15


        ### v0.8.14## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.13...%220.8.14%22

        ### 0.8.13## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.12...0.8.13

        ### 0.8.12## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.11...0.8.12

        ### 0.8.11## What's Changed

Full Changelog: https://github.com/michijs/dev-server/compare/0.8.10...0.8.11

        ### 0.8.10**Full Changelog**: https://github.com/michijs/dev-server/compare/0.8.9...0.8.10


        ### 0.8.9## What's Changed

New Contributors

Full Changelog: https://github.com/michijs/dev-server/compare/v0.8.8...0.8.9

        ### v0.8.8-beta.9Automatic release


        ### v0.8.8-beta.8Automatic release


        ### v0.8.8Automatic release


        ### v0.8.8-beta.7Automatic release


        ### v0.8.8-beta.6Automatic release


        ### v0.8.8-beta.5Automatic release


        ### v0.8.8-beta.4Automatic release
Commit history:

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump @​michijs/shared-configs from 0.0.24 to 0.0.37

Changelog:
Sourced from releases.
        ### 0.0.37## What's Changed

Full Changelog: https://github.com/michijs/shared-configs/compare/0.0.36...0.0.37

        ### 0.0.36## What's Changed

New Contributors

Full Changelog: https://github.com/michijs/shared-configs/compare/0.0.34...0.0.36

        ### 0.0.34**Full Changelog**: https://github.com/michijs/shared-configs/compare/0.0.33...0.0.34


        ### 0.0.33**Full Changelog**: https://github.com/michijs/shared-configs/compare/0.0.32...0.0.33


        ### 0.0.32**Full Changelog**: https://github.com/michijs/shared-configs/compare/0.0.31...0.0.32


        ### 0.0.31**Full Changelog**: https://github.com/michijs/shared-configs/compare/0.0.30...0.0.31


        ### 0.0.30## What's Changed

Full Changelog: https://github.com/michijs/shared-configs/compare/0.0.29...0.0.30

        ### 0.0.29**Full Changelog**: https://github.com/michijs/shared-configs/compare/0.0.28...0.0.29


        ### 0.0.28**Full Changelog**: https://github.com/michijs/shared-configs/compare/0.0.27...0.0.28


        ### 0.0.27**Full Changelog**: https://github.com/michijs/shared-configs/compare/0.0.26...0.0.27


        ### 0.0.26**Full Changelog**: https://github.com/michijs/shared-configs/compare/0.0.25...0.0.26


        ### 0.0.25**Full Changelog**: https://github.com/michijs/shared-configs/compare/0.0.24...0.0.25


        ### 0.0.24Automatic release
Commit history:
  • d732fa chore: Release 0.0.24
  • c74f5c Disable useStrictMode in biome.json
  • 919c97 chore: Release 0.0.25
  • 003bc2 chore: Release 0.0.26
  • c601c1 noTsIgnore turned off
  • ac061b chore: Release 0.0.27
  • fa0f0e Small changes
  • 1a77b8 chore: Release 0.0.28
  • c88e83 Added noConfusingLabels
  • f05d1c chore: Release 0.0.29
  • f38b1d Updated rules
  • 54e144 chore: Autofixes (Revert "Bump @storybook/addon-a11y from 6.5.16 to 7.0.2" #14)

    Co-authored-by: michijs[bot] <235342604+michijs[bot]@​users.noreply.github.com>

  • b6b596 chore: Release 0.0.30
  • 26d0b7 Updated rules
  • 8184c1 Merge branch 'master' of https://github.com/michijs/shared-configs
  • 73436f chore: Release 0.0.31
  • 6977ec small changes
  • cee0ab chore: Release 0.0.32
  • b20c26 Updated includes
  • d491ed chore: Release 0.0.33
  • 872315 Bump
  • 6a69fe chore: Release 0.0.34
  • b020cb Updated options
  • 2d8f65 Updated tsconfig
  • 9988b3 Update package.json (Bump @storybook/builder-vite from 7.0.2 to 7.0.5 #15)

    What is the purpose of this pull request?

    Screenshots or example usage

    Types of changes

    • Bug fix (non-breaking change which fixes an issue)
    • New feature (non-breaking change which adds functionality)
    • Quality improvement (tests or refactors)
    • Breaking change (fix or feature that would cause existing
      functionality to change)
    • Trivial change (small fix or feature that doesn't impact
      functionalities)
    • Requires change to documentation, which has been updated
      accordingly

    Signed-off-by: Lucas Segurado <lsegurado1996@​gmail.com>

  • 7a9e7e chore: Release 0.0.36
  • bf294a Update tsconfig.json (Bump @storybook/addon-controls from 7.0.2 to 7.0.5 #16)

    What is the purpose of this pull request?

    Screenshots or example usage

    Types of changes

    • Bug fix (non-breaking change which fixes an issue)
    • New feature (non-breaking change which adds functionality)
    • Quality improvement (tests or refactors)
    • Breaking change (fix or feature that would cause existing
      functionality to change)
    • Trivial change (small fix or feature that doesn't impact
      functionalities)
    • Requires change to documentation, which has been updated
      accordingly

    Signed-off-by: Lucas Segurado <lsegurado1996@​gmail.com>

  • 3c3aca chore: Release v0.0.37

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump @​storybook/addon-a11y from 9.1.3 to 10.4.0

Changelog:
Sourced from releases.
        ### v10.5.0-alpha.0## 10.5.0-alpha.0




        ### v10.4.0## 10.4.0

AI-assisted setup, change-aware review, and stronger framework support

Storybook 10.4 contains hundreds of fixes and improvements including:

  • 🤖 Agentic Setup: New CLI workflow for AI-assisted Storybook setup and onboarding
  • 🔍 Change review: Sidebar filtering to highlight new, modified, and related stories based on git changes
  • 🧭 Sidebar review tools: Status filtering, URL-persisted filters, and clearer review signals in the sidebar
  • ⚛️ TanStack React: New `@​storybook/tanstack-react` framework with routing and server function support
  • 🧩 React MCP: Faster, more accurate component docgen powered by the TypeScript Language Server
  • 📱 React Native: Zero config RN project initialization
  • 🤝 Sharing: Easily publish and share your local Storybook with teammates, powered by Chromatic
List of all updates
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!
  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!
  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!
  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!
  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!
  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!
  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!
  • CLI: Change mock event detection - #34586, thanks @​yannbf!
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!
  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!
  • CLI: Fix agentic check - #34678, thanks @​yannbf!
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!
  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!
  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!
  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!
  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!
  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!
  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!
  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!
  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!
  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!
  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!
  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!
  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!
  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!
  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!
  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!
  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!
  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!
  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!
  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!
  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!
  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!
  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!
  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!
  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!
  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!
  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!
  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!
  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!
  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!
  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!
  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!
  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!
  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!
  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!
  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!
  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!
  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!
  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!
  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!
  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!
  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!
  • ReactNative: New init setup - #34665, thanks @​ndelangen!
  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!
  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!
  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!
  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!
  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!
  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!
  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!
  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!
  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!
  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!
  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!
  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!
  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!
  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!
  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!
  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!
  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!
  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!
  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!
  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!
  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!
  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!
  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!
  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!
        ### v10.4.0-beta.0## 10.4.0-beta.0
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!

  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!

  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!

  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!

          ### v10.4.0-alpha.19## 10.4.0-alpha.19
    
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!

  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!

  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!

  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!

  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!

  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!

  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!

  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!

  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!

  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!

  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!

          ### v10.4.0-alpha.18## 10.4.0-alpha.18
    
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!

  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!

  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!

  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!

  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!

  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!

  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!

  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!

  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.17## 10.4.0-alpha.17
    
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!

  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!

  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!

  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!

  • ReactNative: New init setup - #34665, thanks @​ndelangen!

  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!

  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!

          ### v10.4.0-alpha.16## 10.4.0-alpha.16
    
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!

  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!

  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!

  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!

          ### v10.4.0-alpha.15## 10.4.0-alpha.15
    
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!

          ### v10.4.0-alpha.14## 10.4.0-alpha.14
    
  • CLI: Fix agentic check - #34678, thanks @​yannbf!

          ### v10.4.0-alpha.13## 10.4.0-alpha.13
    
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!

  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!

          ### v10.4.0-alpha.12## 10.4.0-alpha.12
    
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!

          ### v10.4.0-alpha.11## 10.4.0-alpha.11
    
  • CLI: Change mock event detection - #34586, thanks @​yannbf!

  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!

  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.3.6## 10.3.6
    
  • ESLint: Update deprecated @​storybook/test reference to storybook/test - #34430, thanks @​venkat22022202!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.4.0-alpha.10## 10.4.0-alpha.10
    
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!

  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.9## 10.4.0-alpha.9
    
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!

  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!

  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!

  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!

  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!

  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!

  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!

  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!

  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!

          ### v10.4.0-alpha.8## 10.4.0-alpha.8
    
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!

  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!

  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!

  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!

  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!

  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!

          ### v10.3.5## 10.3.5
    
  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

[!NOTE]
Version >=0.5.0 of @&ZeroWidthSpace;storybook/addon-mcp enables component manifests again. If you're upgrading Storybook from version >= 10.3.0 to >= 10.3.5 and are using the MCP addon, you should also upgrade @&ZeroWidthSpace;storybook/addon-mcp to keep the docs toolset in the MCP server.

        ### v10.4.0-alpha.7## 10.4.0-alpha.7
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!

  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!

  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!

  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!

  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!

          ### v10.3.4## 10.3.4
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

          ### v10.4.0-alpha.6## 10.4.0-alpha.6
    
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!

  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!

  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!

  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!

  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!

  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!

  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!

          ### v10.4.0-alpha.5## 10.4.0-alpha.5
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!

  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!

  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!

          ### v10.4.0-alpha.4## 10.4.0-alpha.4
    
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!

  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!

  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!

  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!

  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!

  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!

          ### v10.4.0-alpha.3## 10.4.0-alpha.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.3.3## 10.3.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

          ### v10.3.2## 10.3.2
    
  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.4.0-alpha.2## 10.4.0-alpha.2
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!

  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!

          ### v10.4.0-alpha.1## 10.4.0-alpha.1
    
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!

          ### v10.3.1## 10.3.1
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

          ### v10.4.0-alpha.0## 10.4.0-alpha.0
    
    
    
    
          ### v10.3.0## 10.3.0
    

> Improved developer experience, AI-assisting tools, and broader ecosystem support

Storybook 10.3 contains hundreds of fixes and improvements including:

  • 🤖 Storybook MCP: Agentic component dev, docs, and test (Preview release for React)
  • ⚡ Vite 8 support
  • ▲ Next.js 16.2 support
  • 📝 ESLint 10 support
  • 〰️ Addon Pseudo-States: Tailwind v4 support
  • 🔧 Addon-Vitest: Simplified configuration - no more setup files required
  • ♿ Numerous accessibility improvements across the UI
List of all updates
  • A11y: Add ScrollArea prop focusable for when it has static children - #33876, thanks @​Sidnioulz!
  • A11y: Ensure popover dialogs have an ARIA label - #33500, thanks @​gayanMatch!
  • A11y: Make resize handles for addon panel and sidebar accessible #33980
  • A11y: Underline MDX links for WCAG SC 1.4.1 compliance - #33139, thanks @​NikhilChowdhury27!
  • Actions: Add expandLevel parameter to configure tree depth - #33977, thanks @​mixelburg!
  • Actions: Fix HandlerFunction type to support async callback props - #33864, thanks @​mixelburg!
  • Addon-Docs: Add React as optimizeDeps entry - #34176, thanks @​valentinpalkovic!
  • Addon-Docs: Add support for `sourceState: 'none'` to canvas block parameters - #33627, thanks @​quisido!
  • Addon-docs: Restore `docs.components` overrides for doc blocks #34111
  • Addon-Vitest: Add channel API to programmatically trigger test runs - #33206, thanks @​JReinhold!
  • Addon-Vitest: Handle additional vitest config export patterns in postinstall - #34106, thanks @​copilot-swe-agent!
  • Addon-Vitest: Make Playwright `--with-deps` platform-aware to avoid `sudo` prompt on Linux #34121
  • Addon-Vitest: Refactor Vitest setup to eliminate the need for a dedicated setup file - #34025, thanks @​valentinpalkovic!
  • Addon-Vitest: Support Vitest canaries - #33833, thanks @​valentinpalkovic!
  • Angular: Add moduleResolution: bundler to tsconfig - #34085, thanks @​valentinpalkovic!
  • Angular: only load webpack dependencies on demand - #34043, thanks @​sod!
  • Angular: Storybook fails with unknown option silent - #33736, thanks @​tanujbhaud!
  • Build: Update @​types/node - #34037, thanks @​valentinpalkovic!
  • Builder-Vite: Centralize Vite plugins for builder-vite and addon-vitest - #33819, thanks @​valentinpalkovic!
  • Builder-Vite: Fix cold-cache vitest failures for story paths containing glob special characters - #34044, thanks @​copilot-swe-agent!
  • Builder-Vite: Use preview annotations as entry points for optimizeDeps - #33875, thanks @​copilot-swe-agent!
  • CI: declare explicit permissions for stale and weekly cron workflows - #33902, thanks @​Rohan5commit!
  • CLI: Add vike CLI metadata - #34189, thanks @​yannbf!
  • CLI: Avoid hanging of postinstall during init - #34175, thanks @​valentinpalkovic!
  • CLI: Fix onboarding not opening - #33609, thanks @​ndelangen!
  • CLI: Show multiple favicons warning as debug message - #34069, thanks @​remino!
  • Cli: Use npm for registry URL in PNPMProxy to avoid workspace errors - #33571, thanks @​ia319!
  • Controls: Allow story argTypes to override control: false from meta - #33729, thanks @​jonathan-fulton!
  • Controls: Fix Object contrast issue and tidy up code - #33923, thanks @​Sidnioulz!
  • Core: Ensure telemetry is never triggered on initial load of checklist data - #33918, thanks @​ghengeveld!
  • Core: Fix event source URL based on refId when multiple iframes share the same origin #34105
  • Core: Fix false-positive CJS warning when 'exports' appears in strings or comments - #33572, thanks @​reeseo3o!
  • Core: Fix handling complex viewport sizes #33615
  • Core: Fix iframe reference for composed Storybook on a subpath #34100
  • Core: Fix typos: occured -> occurred, recieves -> receives - #33727, thanks @​jonathan-fulton!
  • Core: Handle BROWSER=none correctly and improve error messages - #33730, thanks @​jonathan-fulton!
  • Core: Ignore empty files when indexing - #33782, thanks @​JReinhold!
  • Core: Register CORS middleware before index.json route - #33728, thanks @​jonathan-fulton!
  • Core: Revert Pull Request #33420 from Maelryn/fix/copy-button-overlap - #33877, thanks @​Sidnioulz!
  • Core: Zoom tool refinements - Hide reset button when value is initial - #33635, thanks @​superLipbalm!
  • Docs: Edit JSON button is now accessible at 320x256 viewport (WCAG 2.1 Reflow test) - #33707, thanks @​TheSeydiCharyyev!
  • Docs: Make CSS ordering in DocsContainer more predictable #34015
  • ESLint-plugin: Disallow extra properties in eslint plugin rule options - #32056, thanks @​andreww2012!
  • ESLint: bail out config setup if eslint-plugin-storybook is already imported - #34089, thanks @​copilot-swe-agent!
  • HMR: Fix race conditions causing stale play functions to fire on re-rendered stories - #33930, thanks @​copilot-swe-agent!
  • Maintenance: Revert pull request #33930 HMR events - #34190, thanks @​yannbf!
  • Maintenance: Use std-env for AI agent detection in telemetry #34114
  • Manifest: Add docs entries to debugger - #33607, thanks @​JReinhold!
  • Manifest: Rename `experimentalComponentsManifest` → `componentsManifest`, default to `true` #33974
  • Manifests: Fix Attached MDX causing wrong component entries #34101
  • Next.js-Vite: Fix failing postcss mutation - #33879, thanks @​valentinpalkovic!
  • Next.js: Move image configuration from FrameworkOptions to parameters #32639, thanks @​y-hsgw!
  • Preact: Support inferring props from component types - #33828, thanks @​JoviDeCroock!
  • React Native Web: Fix inconsistent example stories - #33891, thanks @​danielalanbates!
  • React: Add react-docgen-typescript to component manifest - #33818, thanks @​kasperpeulen!
  • Revert "Toolbar: Remove extra toolbar divider when zoom controls not shown" - #34099, thanks @​valentinpalkovic!
  • Test: Fix clearing mocks in Vitest #34078
  • Test: Update @​testing-library/jest-dom - #33928, thanks @​valentinpalkovic!
  • Theming: Export interface declaration for `ThemesGlobals` - #33343, thanks @​icopp!
  • Toolbar: Remove extra toolbar divider when zoom controls not shown - #33731, thanks @​jonathan-fulton!
  • UI: Allow direct kb/mouse actions on zoom tool button - #33496, thanks @​Sidnioulz!
  • UI: Avoid large animation for reduced motion users - #33530, thanks @​Sidnioulz!
  • UI: Ensure Link without href is keyboard-reachable - #34163, thanks @​Sidnioulz!
  • UI: Fix `z-index` problem with `popover`s and `modal`s nesting - #33757, thanks @​ndelangen!
  • UI: Fix code/copy buttons overlap with content - #33889, thanks @​Sidnioulz!
  • UI: Fix Copy button overlapping code in portrait mode - #33420, thanks @​Maelryn!
  • UI: Fix modal text selection - #33967, thanks @​Sidnioulz!
  • UI: Fix tab navigation after closing addon panel - #33971, thanks @​copilot-swe-agent!
  • UI: Handle kb nav edge cases when preview and panel are hidden - #33588, thanks @​Sidnioulz!
  • UI: Hide addon panel Drag on pages without a panel - #34162, thanks @​Sidnioulz!
  • UI: Hide manifest tag for now - #34165, thanks @​Sidnioulz!
  • UI: Make disabled Buttons keyboard-focusable - #34166, thanks @​Sidnioulz!
  • UI: Make TagsFilter state persistent #33374
  • UI: Use correct selector for addon panel focus check - #34164, thanks @​Sidnioulz!
  • UI: Zoom faster when pressing shift - #34185, thanks @​Sidnioulz!
  • Viewport: Skip viewport validation before parameters load - #33794, thanks @​ia319!
  • Vite: Add mock entries to optimizeDeps.entries - #34167, thanks @​valentinpalkovic!
  • Vue3-Vite: Allow paths in docgen tsconfig option #32310, thanks @​Thomaash!
Commit history:
  • 7c9e28 Bump version from "10.4.0" to "10.5.0-alpha.0" [skip ci]
  • 0c1ae9 Release: Preminor alpha 10.5.0-alpha.0

    Release: Preminor alpha 10.5.0-alpha.0

  • fba414 Write changelog for 10.5.0-alpha.0 [skip ci]
  • f8c16d Bump version from "10.4.0-beta.0" to "10.4.0" [skip ci]
  • a2220d Merge pull request #34796 from storybookjs/version-non-patch-from-10.4.0-beta.0

    Release: Minor 10.4.0

  • 3c907e add sharing to changelog
  • ddd0f9 improve changelog
  • 891d64 add initial minor changelog
  • 9e7772 Write changelog for 10.4.0 [skip ci]
  • e02da0 Bump version from "10.4.0-alpha.19" to "10.4.0-beta.0" [skip ci]
  • 7b2de0 Merge pull request #34789 from storybookjs/version-non-patch-from-10.4.0-alpha.19

    Release: Prerelease beta 10.4.0-beta.0

  • 3b07e6 Write changelog for 10.4.0-beta.0 [skip ci]
  • 589f29 Merge pull request #34788 from storybookjs/next-release

    Build: Merge next-release into next

  • 6fe595 Merge branch 'next' into next-release
  • f9810c Merge pull request #34769 from storybookjs/jeppe/handle-minimum-release-age

    CLI: Handle minimumReleaseAge conflicts across package managers

  • db9d52 format
  • bdc688 fix documentation string
  • eed7d2 simplify error handling
  • d69581 Merge pull request #34783 from storybookjs/jeppe/fix-vite8-svelte

    Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner

  • 27d818 Merge pull request #34786 from storybookjs/valentin/change-detection-docs-in-preview

    Docs: Add in preview notice for change detection

  • f1b35f Docs: Add in preview notice for change detection
  • a5d674 Merge pull request #34782 from storybookjs/yann/fix-payload-names

    Maintenance: Fix self healing payload

  • fd0b83 Fix Vite 8 + Vitest + Svelte breaking rolldown deps scanner
  • 429fb3 Bump version from "10.4.0-alpha.18" to "10.4.0-alpha.19" [skip ci]
  • 1a50c0 Merge pull request #34773 from storybookjs/version-non-patch-from-10.4.0-alpha.18

    Release: Prerelease alpha 10.4.0-alpha.19

  • 8eb16b unknown errors during precheck should not halt the process completely.
  • d1d63f fix type
  • 79a866 format
  • 3ebdd0 undo the "run" prefix on ghost stories and self healing payload
  • abf3c2 detect when minimumReleaseAgeExclude is already correctly configured, add VTA to list of excludes

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author
Changelog:
Sourced from releases.
        ### v10.5.0-alpha.0## 10.5.0-alpha.0




        ### v10.4.0## 10.4.0

AI-assisted setup, change-aware review, and stronger framework support

Storybook 10.4 contains hundreds of fixes and improvements including:

  • 🤖 Agentic Setup: New CLI workflow for AI-assisted Storybook setup and onboarding
  • 🔍 Change review: Sidebar filtering to highlight new, modified, and related stories based on git changes
  • 🧭 Sidebar review tools: Status filtering, URL-persisted filters, and clearer review signals in the sidebar
  • ⚛️ TanStack React: New `@​storybook/tanstack-react` framework with routing and server function support
  • 🧩 React MCP: Faster, more accurate component docgen powered by the TypeScript Language Server
  • 📱 React Native: Zero config RN project initialization
  • 🤝 Sharing: Easily publish and share your local Storybook with teammates, powered by Chromatic
List of all updates
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!
  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!
  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!
  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!
  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!
  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!
  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!
  • CLI: Change mock event detection - #34586, thanks @​yannbf!
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!
  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!
  • CLI: Fix agentic check - #34678, thanks @​yannbf!
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!
  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!
  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!
  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!
  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!
  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!
  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!
  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!
  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!
  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!
  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!
  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!
  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!
  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!
  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!
  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!
  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!
  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!
  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!
  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!
  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!
  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!
  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!
  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!
  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!
  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!
  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!
  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!
  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!
  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!
  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!
  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!
  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!
  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!
  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!
  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!
  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!
  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!
  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!
  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!
  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!
  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!
  • ReactNative: New init setup - #34665, thanks @​ndelangen!
  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!
  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!
  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!
  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!
  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!
  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!
  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!
  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!
  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!
  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!
  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!
  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!
  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!
  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!
  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!
  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!
  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!
  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!
  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!
  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!
  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!
  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!
  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!
  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!
        ### v10.4.0-beta.0## 10.4.0-beta.0
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!

  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!

  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!

  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!

          ### v10.4.0-alpha.19## 10.4.0-alpha.19
    
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!

  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!

  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!

  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!

  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!

  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!

  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!

  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!

  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!

  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!

  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!

          ### v10.4.0-alpha.18## 10.4.0-alpha.18
    
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!

  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!

  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!

  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!

  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!

  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!

  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!

  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!

  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.17## 10.4.0-alpha.17
    
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!

  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!

  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!

  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!

  • ReactNative: New init setup - #34665, thanks @​ndelangen!

  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!

  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!

          ### v10.4.0-alpha.16## 10.4.0-alpha.16
    
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!

  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!

  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!

  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!

          ### v10.4.0-alpha.15## 10.4.0-alpha.15
    
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!

          ### v10.4.0-alpha.14## 10.4.0-alpha.14
    
  • CLI: Fix agentic check - #34678, thanks @​yannbf!

          ### v10.4.0-alpha.13## 10.4.0-alpha.13
    
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!

  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!

          ### v10.4.0-alpha.12## 10.4.0-alpha.12
    
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!

          ### v10.4.0-alpha.11## 10.4.0-alpha.11
    
  • CLI: Change mock event detection - #34586, thanks @​yannbf!

  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!

  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.3.6## 10.3.6
    
  • ESLint: Update deprecated @​storybook/test reference to storybook/test - #34430, thanks @​venkat22022202!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.4.0-alpha.10## 10.4.0-alpha.10
    
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!

  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.9## 10.4.0-alpha.9
    
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!

  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!

  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!

  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!

  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!

  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!

  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!

  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!

  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!

          ### v10.4.0-alpha.8## 10.4.0-alpha.8
    
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!

  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!

  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!

  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!

  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!

  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!

          ### v10.3.5## 10.3.5
    
  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

[!NOTE]
Version >=0.5.0 of @&ZeroWidthSpace;storybook/addon-mcp enables component manifests again. If you're upgrading Storybook from version >= 10.3.0 to >= 10.3.5 and are using the MCP addon, you should also upgrade @&ZeroWidthSpace;storybook/addon-mcp to keep the docs toolset in the MCP server.

        ### v10.4.0-alpha.7## 10.4.0-alpha.7
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!

  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!

  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!

  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!

  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!

          ### v10.3.4## 10.3.4
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

          ### v10.4.0-alpha.6## 10.4.0-alpha.6
    
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!

  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!

  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!

  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!

  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!

  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!

  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!

          ### v10.4.0-alpha.5## 10.4.0-alpha.5
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!

  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!

  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!

          ### v10.4.0-alpha.4## 10.4.0-alpha.4
    
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!

  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!

  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!

  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!

  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!

  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!

          ### v10.4.0-alpha.3## 10.4.0-alpha.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.3.3## 10.3.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

          ### v10.3.2## 10.3.2
    
  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.4.0-alpha.2## 10.4.0-alpha.2
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!

  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!

          ### v10.4.0-alpha.1## 10.4.0-alpha.1
    
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!

          ### v10.3.1## 10.3.1
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

          ### v10.4.0-alpha.0## 10.4.0-alpha.0
    
    
    
    
          ### v10.3.0## 10.3.0
    

> Improved developer experience, AI-assisting tools, and broader ecosystem support

Storybook 10.3 contains hundreds of fixes and improvements including:

  • 🤖 Storybook MCP: Agentic component dev, docs, and test (Preview release for React)
  • ⚡ Vite 8 support
  • ▲ Next.js 16.2 support
  • 📝 ESLint 10 support
  • 〰️ Addon Pseudo-States: Tailwind v4 support
  • 🔧 Addon-Vitest: Simplified configuration - no more setup files required
  • ♿ Numerous accessibility improvements across the UI
List of all updates
  • A11y: Add ScrollArea prop focusable for when it has static children - #33876, thanks @​Sidnioulz!
  • A11y: Ensure popover dialogs have an ARIA label - #33500, thanks @​gayanMatch!
  • A11y: Make resize handles for addon panel and sidebar accessible #33980
  • A11y: Underline MDX links for WCAG SC 1.4.1 compliance - #33139, thanks @​NikhilChowdhury27!
  • Actions: Add expandLevel parameter to configure tree depth - #33977, thanks @​mixelburg!
  • Actions: Fix HandlerFunction type to support async callback props - #33864, thanks @​mixelburg!
  • Addon-Docs: Add React as optimizeDeps entry - #34176, thanks @​valentinpalkovic!
  • Addon-Docs: Add support for `sourceState: 'none'` to canvas block parameters - #33627, thanks @​quisido!
  • Addon-docs: Restore `docs.components` overrides for doc blocks #34111
  • Addon-Vitest: Add channel API to programmatically trigger test runs - #33206, thanks @​JReinhold!
  • Addon-Vitest: Handle additional vitest config export patterns in postinstall - #34106, thanks @​copilot-swe-agent!
  • Addon-Vitest: Make Playwright `--with-deps` platform-aware to avoid `sudo` prompt on Linux #34121
  • Addon-Vitest: Refactor Vitest setup to eliminate the need for a dedicated setup file - #34025, thanks @​valentinpalkovic!
  • Addon-Vitest: Support Vitest canaries - #33833, thanks @​valentinpalkovic!
  • Angular: Add moduleResolution: bundler to tsconfig - #34085, thanks @​valentinpalkovic!
  • Angular: only load webpack dependencies on demand - #34043, thanks @​sod!
  • Angular: Storybook fails with unknown option silent - #33736, thanks @​tanujbhaud!
  • Build: Update @​types/node - #34037, thanks @​valentinpalkovic!
  • Builder-Vite: Centralize Vite plugins for builder-vite and addon-vitest - #33819, thanks @​valentinpalkovic!
  • Builder-Vite: Fix cold-cache vitest failures for story paths containing glob special characters - #34044, thanks @​copilot-swe-agent!
  • Builder-Vite: Use preview annotations as entry points for optimizeDeps - #33875, thanks @​copilot-swe-agent!
  • CI: declare explicit permissions for stale and weekly cron workflows - #33902, thanks @​Rohan5commit!
  • CLI: Add vike CLI metadata - #34189, thanks @​yannbf!
  • CLI: Avoid hanging of postinstall during init - #34175, thanks @​valentinpalkovic!
  • CLI: Fix onboarding not opening - #33609, thanks @​ndelangen!
  • CLI: Show multiple favicons warning as debug message - #34069, thanks @​remino!
  • Cli: Use npm for registry URL in PNPMProxy to avoid workspace errors - #33571, thanks @​ia319!
  • Controls: Allow story argTypes to override control: false from meta - #33729, thanks @​jonathan-fulton!
  • Controls: Fix Object contrast issue and tidy up code - #33923, thanks @​Sidnioulz!
  • Core: Ensure telemetry is never triggered on initial load of checklist data - #33918, thanks @​ghengeveld!
  • Core: Fix event source URL based on refId when multiple iframes share the same origin #34105
  • Core: Fix false-positive CJS warning when 'exports' appears in strings or comments - #33572, thanks @​reeseo3o!
  • Core: Fix handling complex viewport sizes #33615
  • Core: Fix iframe reference for composed Storybook on a subpath #34100
  • Core: Fix typos: occured -> occurred, recieves -> receives - #33727, thanks @​jonathan-fulton!
  • Core: Handle BROWSER=none correctly and improve error messages - #33730, thanks @​jonathan-fulton!
  • Core: Ignore empty files when indexing - #33782, thanks @​JReinhold!
  • Core: Register CORS middleware before index.json route - #33728, thanks @​jonathan-fulton!
  • Core: Revert Pull Request #33420 from Maelryn/fix/copy-button-overlap - #33877, thanks @​Sidnioulz!
  • Core: Zoom tool refinements - Hide reset button when value is initial - #33635, thanks @​superLipbalm!
  • Docs: Edit JSON button is now accessible at 320x256 viewport (WCAG 2.1 Reflow test) - #33707, thanks @​TheSeydiCharyyev!
  • Docs: Make CSS ordering in DocsContainer more predictable #34015
  • ESLint-plugin: Disallow extra properties in eslint plugin rule options - #32056, thanks @​andreww2012!
  • ESLint: bail out config setup if eslint-plugin-storybook is already imported - #34089, thanks @​copilot-swe-agent!
  • HMR: Fix race conditions causing stale play functions to fire on re-rendered stories - #33930, thanks @​copilot-swe-agent!
  • Maintenance: Revert pull request #33930 HMR events - #34190, thanks @​yannbf!
  • Maintenance: Use std-env for AI agent detection in telemetry #34114
  • Manifest: Add docs entries to debugger - #33607, thanks @​JReinhold!
  • Manifest: Rename `experimentalComponentsManifest` → `componentsManifest`, default to `true` #33974
  • Manifests: Fix Attached MDX causing wrong component entries #34101
  • Next.js-Vite: Fix failing postcss mutation - #33879, thanks @​valentinpalkovic!
  • Next.js: Move image configuration from FrameworkOptions to parameters #32639, thanks @​y-hsgw!
  • Preact: Support inferring props from component types - #33828, thanks @​JoviDeCroock!
  • React Native Web: Fix inconsistent example stories - #33891, thanks @​danielalanbates!
  • React: Add react-docgen-typescript to component manifest - #33818, thanks @​kasperpeulen!
  • Revert "Toolbar: Remove extra toolbar divider when zoom controls not shown" - #34099, thanks @​valentinpalkovic!
  • Test: Fix clearing mocks in Vitest #34078
  • Test: Update @​testing-library/jest-dom - #33928, thanks @​valentinpalkovic!
  • Theming: Export interface declaration for `ThemesGlobals` - #33343, thanks @​icopp!
  • Toolbar: Remove extra toolbar divider when zoom controls not shown - #33731, thanks @​jonathan-fulton!
  • UI: Allow direct kb/mouse actions on zoom tool button - #33496, thanks @​Sidnioulz!
  • UI: Avoid large animation for reduced motion users - #33530, thanks @​Sidnioulz!
  • UI: Ensure Link without href is keyboard-reachable - #34163, thanks @​Sidnioulz!
  • UI: Fix `z-index` problem with `popover`s and `modal`s nesting - #33757, thanks @​ndelangen!
  • UI: Fix code/copy buttons overlap with content - #33889, thanks @​Sidnioulz!
  • UI: Fix Copy button overlapping code in portrait mode - #33420, thanks @​Maelryn!
  • UI: Fix modal text selection - #33967, thanks @​Sidnioulz!
  • UI: Fix tab navigation after closing addon panel - #33971, thanks @​copilot-swe-agent!
  • UI: Handle kb nav edge cases when preview and panel are hidden - #33588, thanks @​Sidnioulz!
  • UI: Hide addon panel Drag on pages without a panel - #34162, thanks @​Sidnioulz!
  • UI: Hide manifest tag for now - #34165, thanks @​Sidnioulz!
  • UI: Make disabled Buttons keyboard-focusable - #34166, thanks @​Sidnioulz!
  • UI: Make TagsFilter state persistent #33374
  • UI: Use correct selector for addon panel focus check - #34164, thanks @​Sidnioulz!
  • UI: Zoom faster when pressing shift - #34185, thanks @​Sidnioulz!
  • Viewport: Skip viewport validation before parameters load - #33794, thanks @​ia319!
  • Vite: Add mock entries to optimizeDeps.entries - #34167, thanks @​valentinpalkovic!
  • Vue3-Vite: Allow paths in docgen tsconfig option #32310, thanks @​Thomaash!
Commit history:
  • 7c9e28 Bump version from "10.4.0" to "10.5.0-alpha.0" [skip ci]
  • 0c1ae9 Release: Preminor alpha 10.5.0-alpha.0

    Release: Preminor alpha 10.5.0-alpha.0

  • fba414 Write changelog for 10.5.0-alpha.0 [skip ci]
  • f8c16d Bump version from "10.4.0-beta.0" to "10.4.0" [skip ci]
  • a2220d Merge pull request #34796 from storybookjs/version-non-patch-from-10.4.0-beta.0

    Release: Minor 10.4.0

  • 3c907e add sharing to changelog
  • ddd0f9 improve changelog
  • 891d64 add initial minor changelog
  • 9e7772 Write changelog for 10.4.0 [skip ci]
  • e02da0 Bump version from "10.4.0-alpha.19" to "10.4.0-beta.0" [skip ci]
  • 7b2de0 Merge pull request #34789 from storybookjs/version-non-patch-from-10.4.0-alpha.19

    Release: Prerelease beta 10.4.0-beta.0

  • 3b07e6 Write changelog for 10.4.0-beta.0 [skip ci]
  • 589f29 Merge pull request #34788 from storybookjs/next-release

    Build: Merge next-release into next

  • 6fe595 Merge branch 'next' into next-release
  • f9810c Merge pull request #34769 from storybookjs/jeppe/handle-minimum-release-age

    CLI: Handle minimumReleaseAge conflicts across package managers

  • db9d52 format
  • bdc688 fix documentation string
  • eed7d2 simplify error handling
  • d69581 Merge pull request #34783 from storybookjs/jeppe/fix-vite8-svelte

    Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner

  • 27d818 Merge pull request #34786 from storybookjs/valentin/change-detection-docs-in-preview

    Docs: Add in preview notice for change detection

  • f1b35f Docs: Add in preview notice for change detection
  • a5d674 Merge pull request #34782 from storybookjs/yann/fix-payload-names

    Maintenance: Fix self healing payload

  • fd0b83 Fix Vite 8 + Vitest + Svelte breaking rolldown deps scanner
  • 429fb3 Bump version from "10.4.0-alpha.18" to "10.4.0-alpha.19" [skip ci]
  • 1a50c0 Merge pull request #34773 from storybookjs/version-non-patch-from-10.4.0-alpha.18

    Release: Prerelease alpha 10.4.0-alpha.19

  • 8eb16b unknown errors during precheck should not halt the process completely.
  • d1d63f fix type
  • 79a866 format
  • 3ebdd0 undo the "run" prefix on ghost stories and self healing payload
  • abf3c2 detect when minimumReleaseAgeExclude is already correctly configured, add VTA to list of excludes

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump storybook from 9.1.3 to 10.4.0

Changelog:
Sourced from releases.
        ### v10.5.0-alpha.0## 10.5.0-alpha.0




        ### v10.4.0## 10.4.0

AI-assisted setup, change-aware review, and stronger framework support

Storybook 10.4 contains hundreds of fixes and improvements including:

  • 🤖 Agentic Setup: New CLI workflow for AI-assisted Storybook setup and onboarding
  • 🔍 Change review: Sidebar filtering to highlight new, modified, and related stories based on git changes
  • 🧭 Sidebar review tools: Status filtering, URL-persisted filters, and clearer review signals in the sidebar
  • ⚛️ TanStack React: New `@​storybook/tanstack-react` framework with routing and server function support
  • 🧩 React MCP: Faster, more accurate component docgen powered by the TypeScript Language Server
  • 📱 React Native: Zero config RN project initialization
  • 🤝 Sharing: Easily publish and share your local Storybook with teammates, powered by Chromatic
List of all updates
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!
  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!
  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!
  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!
  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!
  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!
  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!
  • CLI: Change mock event detection - #34586, thanks @​yannbf!
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!
  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!
  • CLI: Fix agentic check - #34678, thanks @​yannbf!
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!
  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!
  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!
  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!
  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!
  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!
  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!
  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!
  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!
  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!
  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!
  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!
  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!
  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!
  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!
  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!
  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!
  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!
  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!
  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!
  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!
  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!
  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!
  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!
  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!
  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!
  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!
  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!
  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!
  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!
  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!
  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!
  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!
  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!
  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!
  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!
  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!
  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!
  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!
  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!
  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!
  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!
  • ReactNative: New init setup - #34665, thanks @​ndelangen!
  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!
  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!
  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!
  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!
  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!
  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!
  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!
  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!
  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!
  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!
  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!
  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!
  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!
  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!
  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!
  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!
  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!
  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!
  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!
  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!
  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!
  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!
  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!
  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!
        ### v10.4.0-beta.0## 10.4.0-beta.0
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!

  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!

  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!

  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!

          ### v10.4.0-alpha.19## 10.4.0-alpha.19
    
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!

  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!

  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!

  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!

  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!

  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!

  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!

  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!

  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!

  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!

  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!

          ### v10.4.0-alpha.18## 10.4.0-alpha.18
    
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!

  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!

  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!

  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!

  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!

  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!

  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!

  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!

  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.17## 10.4.0-alpha.17
    
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!

  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!

  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!

  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!

  • ReactNative: New init setup - #34665, thanks @​ndelangen!

  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!

  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!

          ### v10.4.0-alpha.16## 10.4.0-alpha.16
    
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!

  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!

  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!

  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!

          ### v10.4.0-alpha.15## 10.4.0-alpha.15
    
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!

          ### v10.4.0-alpha.14## 10.4.0-alpha.14
    
  • CLI: Fix agentic check - #34678, thanks @​yannbf!

          ### v10.4.0-alpha.13## 10.4.0-alpha.13
    
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!

  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!

          ### v10.4.0-alpha.12## 10.4.0-alpha.12
    
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!

          ### v10.4.0-alpha.11## 10.4.0-alpha.11
    
  • CLI: Change mock event detection - #34586, thanks @​yannbf!

  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!

  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.3.6## 10.3.6
    
  • ESLint: Update deprecated @​storybook/test reference to storybook/test - #34430, thanks @​venkat22022202!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.4.0-alpha.10## 10.4.0-alpha.10
    
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!

  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.9## 10.4.0-alpha.9
    
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!

  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!

  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!

  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!

  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!

  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!

  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!

  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!

  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!

          ### v10.4.0-alpha.8## 10.4.0-alpha.8
    
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!

  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!

  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!

  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!

  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!

  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!

          ### v10.3.5## 10.3.5
    
  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

[!NOTE]
Version >=0.5.0 of @&ZeroWidthSpace;storybook/addon-mcp enables component manifests again. If you're upgrading Storybook from version >= 10.3.0 to >= 10.3.5 and are using the MCP addon, you should also upgrade @&ZeroWidthSpace;storybook/addon-mcp to keep the docs toolset in the MCP server.

        ### v10.4.0-alpha.7## 10.4.0-alpha.7
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!

  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!

  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!

  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!

  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!

          ### v10.3.4## 10.3.4
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

          ### v10.4.0-alpha.6## 10.4.0-alpha.6
    
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!

  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!

  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!

  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!

  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!

  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!

  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!

          ### v10.4.0-alpha.5## 10.4.0-alpha.5
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!

  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!

  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!

          ### v10.4.0-alpha.4## 10.4.0-alpha.4
    
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!

  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!

  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!

  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!

  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!

  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!

          ### v10.4.0-alpha.3## 10.4.0-alpha.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.3.3## 10.3.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

          ### v10.3.2## 10.3.2
    
  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.4.0-alpha.2## 10.4.0-alpha.2
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!

  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!

          ### v10.4.0-alpha.1## 10.4.0-alpha.1
    
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!

          ### v10.3.1## 10.3.1
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

          ### v10.4.0-alpha.0## 10.4.0-alpha.0
    
    
    
    
          ### v10.3.0## 10.3.0
    

> Improved developer experience, AI-assisting tools, and broader ecosystem support

Storybook 10.3 contains hundreds of fixes and improvements including:

  • 🤖 Storybook MCP: Agentic component dev, docs, and test (Preview release for React)
  • ⚡ Vite 8 support
  • ▲ Next.js 16.2 support
  • 📝 ESLint 10 support
  • 〰️ Addon Pseudo-States: Tailwind v4 support
  • 🔧 Addon-Vitest: Simplified configuration - no more setup files required
  • ♿ Numerous accessibility improvements across the UI
List of all updates
  • A11y: Add ScrollArea prop focusable for when it has static children - #33876, thanks @​Sidnioulz!
  • A11y: Ensure popover dialogs have an ARIA label - #33500, thanks @​gayanMatch!
  • A11y: Make resize handles for addon panel and sidebar accessible #33980
  • A11y: Underline MDX links for WCAG SC 1.4.1 compliance - #33139, thanks @​NikhilChowdhury27!
  • Actions: Add expandLevel parameter to configure tree depth - #33977, thanks @​mixelburg!
  • Actions: Fix HandlerFunction type to support async callback props - #33864, thanks @​mixelburg!
  • Addon-Docs: Add React as optimizeDeps entry - #34176, thanks @​valentinpalkovic!
  • Addon-Docs: Add support for `sourceState: 'none'` to canvas block parameters - #33627, thanks @​quisido!
  • Addon-docs: Restore `docs.components` overrides for doc blocks #34111
  • Addon-Vitest: Add channel API to programmatically trigger test runs - #33206, thanks @​JReinhold!
  • Addon-Vitest: Handle additional vitest config export patterns in postinstall - #34106, thanks @​copilot-swe-agent!
  • Addon-Vitest: Make Playwright `--with-deps` platform-aware to avoid `sudo` prompt on Linux #34121
  • Addon-Vitest: Refactor Vitest setup to eliminate the need for a dedicated setup file - #34025, thanks @​valentinpalkovic!
  • Addon-Vitest: Support Vitest canaries - #33833, thanks @​valentinpalkovic!
  • Angular: Add moduleResolution: bundler to tsconfig - #34085, thanks @​valentinpalkovic!
  • Angular: only load webpack dependencies on demand - #34043, thanks @​sod!
  • Angular: Storybook fails with unknown option silent - #33736, thanks @​tanujbhaud!
  • Build: Update @​types/node - #34037, thanks @​valentinpalkovic!
  • Builder-Vite: Centralize Vite plugins for builder-vite and addon-vitest - #33819, thanks @​valentinpalkovic!
  • Builder-Vite: Fix cold-cache vitest failures for story paths containing glob special characters - #34044, thanks @​copilot-swe-agent!
  • Builder-Vite: Use preview annotations as entry points for optimizeDeps - #33875, thanks @​copilot-swe-agent!
  • CI: declare explicit permissions for stale and weekly cron workflows - #33902, thanks @​Rohan5commit!
  • CLI: Add vike CLI metadata - #34189, thanks @​yannbf!
  • CLI: Avoid hanging of postinstall during init - #34175, thanks @​valentinpalkovic!
  • CLI: Fix onboarding not opening - #33609, thanks @​ndelangen!
  • CLI: Show multiple favicons warning as debug message - #34069, thanks @​remino!
  • Cli: Use npm for registry URL in PNPMProxy to avoid workspace errors - #33571, thanks @​ia319!
  • Controls: Allow story argTypes to override control: false from meta - #33729, thanks @​jonathan-fulton!
  • Controls: Fix Object contrast issue and tidy up code - #33923, thanks @​Sidnioulz!
  • Core: Ensure telemetry is never triggered on initial load of checklist data - #33918, thanks @​ghengeveld!
  • Core: Fix event source URL based on refId when multiple iframes share the same origin #34105
  • Core: Fix false-positive CJS warning when 'exports' appears in strings or comments - #33572, thanks @​reeseo3o!
  • Core: Fix handling complex viewport sizes #33615
  • Core: Fix iframe reference for composed Storybook on a subpath #34100
  • Core: Fix typos: occured -> occurred, recieves -> receives - #33727, thanks @​jonathan-fulton!
  • Core: Handle BROWSER=none correctly and improve error messages - #33730, thanks @​jonathan-fulton!
  • Core: Ignore empty files when indexing - #33782, thanks @​JReinhold!
  • Core: Register CORS middleware before index.json route - #33728, thanks @​jonathan-fulton!
  • Core: Revert Pull Request #33420 from Maelryn/fix/copy-button-overlap - #33877, thanks @​Sidnioulz!
  • Core: Zoom tool refinements - Hide reset button when value is initial - #33635, thanks @​superLipbalm!
  • Docs: Edit JSON button is now accessible at 320x256 viewport (WCAG 2.1 Reflow test) - #33707, thanks @​TheSeydiCharyyev!
  • Docs: Make CSS ordering in DocsContainer more predictable #34015
  • ESLint-plugin: Disallow extra properties in eslint plugin rule options - #32056, thanks @​andreww2012!
  • ESLint: bail out config setup if eslint-plugin-storybook is already imported - #34089, thanks @​copilot-swe-agent!
  • HMR: Fix race conditions causing stale play functions to fire on re-rendered stories - #33930, thanks @​copilot-swe-agent!
  • Maintenance: Revert pull request #33930 HMR events - #34190, thanks @​yannbf!
  • Maintenance: Use std-env for AI agent detection in telemetry #34114
  • Manifest: Add docs entries to debugger - #33607, thanks @​JReinhold!
  • Manifest: Rename `experimentalComponentsManifest` → `componentsManifest`, default to `true` #33974
  • Manifests: Fix Attached MDX causing wrong component entries #34101
  • Next.js-Vite: Fix failing postcss mutation - #33879, thanks @​valentinpalkovic!
  • Next.js: Move image configuration from FrameworkOptions to parameters #32639, thanks @​y-hsgw!
  • Preact: Support inferring props from component types - #33828, thanks @​JoviDeCroock!
  • React Native Web: Fix inconsistent example stories - #33891, thanks @​danielalanbates!
  • React: Add react-docgen-typescript to component manifest - #33818, thanks @​kasperpeulen!
  • Revert "Toolbar: Remove extra toolbar divider when zoom controls not shown" - #34099, thanks @​valentinpalkovic!
  • Test: Fix clearing mocks in Vitest #34078
  • Test: Update @​testing-library/jest-dom - #33928, thanks @​valentinpalkovic!
  • Theming: Export interface declaration for `ThemesGlobals` - #33343, thanks @​icopp!
  • Toolbar: Remove extra toolbar divider when zoom controls not shown - #33731, thanks @​jonathan-fulton!
  • UI: Allow direct kb/mouse actions on zoom tool button - #33496, thanks @​Sidnioulz!
  • UI: Avoid large animation for reduced motion users - #33530, thanks @​Sidnioulz!
  • UI: Ensure Link without href is keyboard-reachable - #34163, thanks @​Sidnioulz!
  • UI: Fix `z-index` problem with `popover`s and `modal`s nesting - #33757, thanks @​ndelangen!
  • UI: Fix code/copy buttons overlap with content - #33889, thanks @​Sidnioulz!
  • UI: Fix Copy button overlapping code in portrait mode - #33420, thanks @​Maelryn!
  • UI: Fix modal text selection - #33967, thanks @​Sidnioulz!
  • UI: Fix tab navigation after closing addon panel - #33971, thanks @​copilot-swe-agent!
  • UI: Handle kb nav edge cases when preview and panel are hidden - #33588, thanks @​Sidnioulz!
  • UI: Hide addon panel Drag on pages without a panel - #34162, thanks @​Sidnioulz!
  • UI: Hide manifest tag for now - #34165, thanks @​Sidnioulz!
  • UI: Make disabled Buttons keyboard-focusable - #34166, thanks @​Sidnioulz!
  • UI: Make TagsFilter state persistent #33374
  • UI: Use correct selector for addon panel focus check - #34164, thanks @​Sidnioulz!
  • UI: Zoom faster when pressing shift - #34185, thanks @​Sidnioulz!
  • Viewport: Skip viewport validation before parameters load - #33794, thanks @​ia319!
  • Vite: Add mock entries to optimizeDeps.entries - #34167, thanks @​valentinpalkovic!
  • Vue3-Vite: Allow paths in docgen tsconfig option #32310, thanks @​Thomaash!
Commit history:
  • 7c9e28 Bump version from "10.4.0" to "10.5.0-alpha.0" [skip ci]
  • 0c1ae9 Release: Preminor alpha 10.5.0-alpha.0

    Release: Preminor alpha 10.5.0-alpha.0

  • fba414 Write changelog for 10.5.0-alpha.0 [skip ci]
  • f8c16d Bump version from "10.4.0-beta.0" to "10.4.0" [skip ci]
  • a2220d Merge pull request #34796 from storybookjs/version-non-patch-from-10.4.0-beta.0

    Release: Minor 10.4.0

  • 3c907e add sharing to changelog
  • ddd0f9 improve changelog
  • 891d64 add initial minor changelog
  • 9e7772 Write changelog for 10.4.0 [skip ci]
  • e02da0 Bump version from "10.4.0-alpha.19" to "10.4.0-beta.0" [skip ci]
  • 7b2de0 Merge pull request #34789 from storybookjs/version-non-patch-from-10.4.0-alpha.19

    Release: Prerelease beta 10.4.0-beta.0

  • 3b07e6 Write changelog for 10.4.0-beta.0 [skip ci]
  • 589f29 Merge pull request #34788 from storybookjs/next-release

    Build: Merge next-release into next

  • 6fe595 Merge branch 'next' into next-release
  • f9810c Merge pull request #34769 from storybookjs/jeppe/handle-minimum-release-age

    CLI: Handle minimumReleaseAge conflicts across package managers

  • db9d52 format
  • bdc688 fix documentation string
  • eed7d2 simplify error handling
  • d69581 Merge pull request #34783 from storybookjs/jeppe/fix-vite8-svelte

    Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner

  • 27d818 Merge pull request #34786 from storybookjs/valentin/change-detection-docs-in-preview

    Docs: Add in preview notice for change detection

  • f1b35f Docs: Add in preview notice for change detection
  • a5d674 Merge pull request #34782 from storybookjs/yann/fix-payload-names

    Maintenance: Fix self healing payload

  • fd0b83 Fix Vite 8 + Vitest + Svelte breaking rolldown deps scanner
  • 429fb3 Bump version from "10.4.0-alpha.18" to "10.4.0-alpha.19" [skip ci]
  • 1a50c0 Merge pull request #34773 from storybookjs/version-non-patch-from-10.4.0-alpha.18

    Release: Prerelease alpha 10.4.0-alpha.19

  • 8eb16b unknown errors during precheck should not halt the process completely.
  • d1d63f fix type
  • 79a866 format
  • 3ebdd0 undo the "run" prefix on ghost stories and self healing payload
  • abf3c2 detect when minimumReleaseAgeExclude is already correctly configured, add VTA to list of excludes

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump typescript from 5.9.2 to 6.0.3

Changelog:
Sourced from releases.
        ### v6.0.3For release notes, check out the [release announcement blog post](https://devblogs.microsoft.com/typescript/announcing-typescript-6-0/).

Downloads are available on:

Downloads are available on:

  • npm

          ### v5.9.3Note: this tag was recreated to point at the correct commit. The npm package contained the correct content.
    

For release notes, check out the release announcement

Downloads are available on:

  • npm

          ### v5.9.2Note: this tag was recreated to point at the correct commit. The npm package contained the correct content.
    

For release notes, check out the release announcement

Downloads are available on:

Commit history:
  • f350b5 Redirect Claude Code to read AGENTS.md (#63446)
  • af087e docs: improve Math.sign JSDoc grammar and clarity (#63433)
  • 55423a Update CONTRIBUTING.md with comment automation policy (#63412)
  • f1a928 Also check package name validity in InstallPackageRequest (#63401)
  • c7a0ae Harden ATA package name filtering (#63368)
  • 5f4350 Require AI disclosure in PR descriptions (#63366)
  • 38c327 Document charCodeAt edge case behavior in first line (#63344)
  • 7b8cb3 Fix redundant leading apostrophe in TS1344 diagnostic message (#63341)

    Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@​users.noreply.github.com>
    Co-authored-by: RyanCavanaugh <6685088+RyanCavanaugh@​users.noreply.github.com>

  • 0844c4 Mark class property initializers as outside of CFA containers (#63310)

    Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@​users.noreply.github.com>
    Co-authored-by: RyanCavanaugh <6685088+RyanCavanaugh@​users.noreply.github.com>

  • 71586a Bump the github-actions group with 2 updates (#63319)

    Signed-off-by: dependabot[bot] <support@​github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@​users.noreply.github.com>

  • 7881fe Add coding agent instructions: refuse PRs unless maintenance mode is acknowledged (#63305)

    Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@​users.noreply.github.com>
    Co-authored-by: RyanCavanaugh <6685088+RyanCavanaugh@​users.noreply.github.com>
    Co-authored-by: Ryan Cavanaugh <RyanCavanaugh@​users.noreply.github.com>

  • 77ddb5 Update deps (#63296)
  • 864777 Bump the github-actions group with 3 updates (#63285)

    Signed-off-by: dependabot[bot] <support@​github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@​users.noreply.github.com>

  • b103a0 Update readme to note current repo state (#63292)
  • 4f7b41 Bump the github-actions group with 2 updates (#63224)

    Signed-off-by: dependabot[bot] <support@​github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@​users.noreply.github.com>

  • 9059e5 Fix missing lib files in reused programs (#63239)
  • c9e742 Port anyFunctionType subtype fix and JSX children NonInferrableType propagation from typescript-go (#63163)

    Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@​users.noreply.github.com>
    Co-authored-by: DanielRosenwasser <972891+DanielRosenwasser@​users.noreply.github.com>

  • 206ed1 Deprecate assert in import() (#63172)
  • e688ac Update dependencies (#63156)
  • 29b300 Bump the github-actions group across 1 directory with 2 updates (#63205)

    Signed-off-by: dependabot[bot] <support@​github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@​users.noreply.github.com>

  • 0c2c7a DOM update (#63183)
  • 924810 Adds the symbol name to the error message for TS2742 (#63200)
  • 6cf817 discrete pluralizer for lib.esnext.temporal unit unions (#63190)
  • b24015 Eliminate interpolation from workflows (#63188)
  • 347254 Update DOM types (#63137)
  • ad04bf Fix crash in declaration emit with nested binding patterns (#63154)

    Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@​users.noreply.github.com>
    Co-authored-by: DanielRosenwasser <972891+DanielRosenwasser@​users.noreply.github.com>

  • 0ed1ee Fix from and with method types of Temporal.PlainMonthDay (#63142)
  • 040c20 Bump github/codeql-action from 4.32.2 to 4.32.3 in the github-actions group (#63145)

    Signed-off-by: dependabot[bot] <support@​github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@​users.noreply.github.com>

  • cdc205 Ensure node is installed in release publisher (#63127)
  • cdb583 Bump github/codeql-action from 4.32.0 to 4.32.2 in the github-actions group (#63123)

    Signed-off-by: dependabot[bot] <support@​github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@​users.noreply.github.com>

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump bun from 1.2.21 to 1.3.14

Changelog:
Sourced from releases.
        ### bun-v1.3.14To install Bun v1.3.14
curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.14:

bun upgrade

Read Bun v1.3.14's release notes on Bun's blog

Thanks to 11 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.13:

bun upgrade

Read Bun v1.3.13's release notes on Bun's blog

Thanks to 8 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.12:

bun upgrade

Read Bun v1.3.12's release notes on Bun's blog

Thanks to 8 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.11:

bun upgrade

Read Bun v1.3.11's release notes on Bun's blog

Thanks to 15 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.10:

bun upgrade

Read Bun v1.3.10's release notes on Bun's blog

Thanks to 11 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.9:

bun upgrade

Read Bun v1.3.9's release notes on Bun's blog

Thanks to 10 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.8:

bun upgrade

Read Bun v1.3.8's release notes on Bun's blog

Thanks to 4 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.7:

bun upgrade

Read Bun v1.3.7's release notes on Bun's blog

Thanks to 11 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.6:

bun upgrade

Read Bun v1.3.6's release notes on Bun's blog

Thanks to 23 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.5:

bun upgrade

Read Bun v1.3.5's release notes on Bun's blog

Thanks to 10 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.4:

bun upgrade

Read Bun v1.3.4's release notes on Bun's blog

Thanks to 14 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.3:

bun upgrade

Read Bun v1.3.3's release notes on Bun's blog

Thanks to 19 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.2:

bun upgrade

Read Bun v1.3.2's release notes on Bun's blog

Thanks to 18 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3.1:

bun upgrade

Read Bun v1.3.1's release notes on Bun's blog

Thanks to 15 contributors!

Special thanks to Martin Schwarzl of Cloudflare for fuzzing & reporting several bugs!!

        ### bun-v1.3.0

Read the blog post

Group 77

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.3:

bun upgrade
        ### bun-v1.2.23To install Bun v1.2.23
curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.2.23:

bun upgrade

Read Bun v1.2.23's release notes on Bun's blog

Thanks to 16 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.2.22:

bun upgrade

Read Bun v1.2.22's release notes on Bun's blog

Thanks to 14 contributors!

curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun

Windows:

powershell -c "irm bun.sh/install.ps1|iex"

To upgrade to Bun v1.2.21:

bun upgrade

Read Bun v1.2.21's release notes on Bun's blog

Thanks to 23 contributors!

Commit history:
  • b36759 js_parser/lexer: saturate escape-sequence error offsets to avoid usize underflow (#30895)

    Reproduction

    $ echo J1x48LmRnCf/ | base64 -d | bun-debug -
    panic: attempt to subtract with overflow (src/js_parser/lexer.rs:803:41)

    The input is ' \ x F0 B9 91 9C ' FF — a string literal starting with
    \x immediately followed by a 4-byte UTF-8 codepoint.

    Cause

    In decode_escape_sequences, several error paths place the diagnostic
    caret by computing start + iter.i - widthN — the position of the
    offending character minus its byte width. When that character is the
    very first thing in the string literal, iter.i can be smaller than
    widthN (e.g. iter.i = 1, widthN = 4), and the usize subtraction
    underflows. Debug builds panic; release silently wraps to a nonsense
    self.end.

    The original Zig source used -| (saturating subtract) in two of these
    spots (lexer.zig:511, 517), but the rest used raw subtraction —
    inherited as-is by the Rust port.

    Fix

    Use saturating_sub in every such error path in
    decode_escape_sequences. The result is only used to produce a caret
    position inside an error message; saturating to 0 when iter.i < widthN
    still gives a reasonable location. Patched sites:

    • 2-digit \x — first hex invalid (the reported panic)
    • 2-digit \x — second hex invalid
    • \u fixed-length — any of 4 hex digits invalid
    • JSON-mode checks inside \0, \u{, \r, \n, and the catch-all
      non-JSON-allowed escape
    • octal_start computation for the legacy-octal range error

    Verification

    $ echo J1x48LmRnCf/ | base64 -d | bun-debug -
    1 | '\x𹑜'
        ^
    error: Syntax Error
        at -:1:1

    Four new tests in
    test/regression/issue/invalid-escape-sequences.test.ts cover \x
    (1st-hex), \x2 (2nd-hex), \u (fixed-length), and \u{
    (variable-length) each followed by a 4-byte codepoint. Without the fix:
    3 of the 4 panic on their respective lines (803/817/909); the \u{
    variant already used saturating_sub so it passes either way but is
    retained for coverage.

    Fixes #30893


    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@​users.noreply.github.com>

  • 25ad47 js_parser/lexer: reject JSX numeric entities outside Unicode range (#30961)

    Reproduction

    $ echo 'PP87JiM3Nzc3NzA3O3s=' | base64 -d > /tmp/repro.jsx   # <\xff;&#7777707;{
    $ bun-debug /tmp/repro.jsx
    panic: assertion failed: supplementary >= 0x10000 && supplementary <= 0x10FFFF (src/bun_core/lib.rs:1319:9)

    Minimal JSX form:

    $ bun-debug -e 'const x = <div>&#7777707;</div>'
    panic: assertion failed: supplementary >= 0x10000 && supplementary <= 0x10FFFF

    &#7777707; decodes to 0x76B22B, well beyond the maximum valid Unicode
    codepoint U+10FFFF.

    Cause

    maybe_decode_jsx_entity (src/js_parser/lexer.rs:3312) parses the
    numeric entity as i32 and only errors on InvalidCharacter /
    Overflow from bun_core::parse_int. Any value that fits in i32 is
    forwarded to strings::push_codepoint_utf16 (called from
    decode_jsx_entities), which calls encode_surrogate_pair
    u16_lead / u16_trail. Both assert supplementary <= 0x10FFFF
    (src/bun_core/lib.rs:1319 and :1326). Debug builds panic; release
    builds silently encode garbage surrogate pairs (the Zig original used
    @&ZeroWidthSpace;truncate inline and hid the problem).

    Fix

    Reject values outside the Unicode range 0..=0x10FFFF in the same
    arm that handles parse_int success, emitting the existing
    "JSX entity escape is too big" diagnostic and substituting
    UNICODE_REPLACEMENT (U+FFFD) — matching the Overflow branch.

    Verification

    $ bun-debug -e 'const x = <div>&#7777707;</div>'
    1 | const x = <div>&#7777707;</div>
                        ^
    error: JSX entity escape is too big: #7777707

    Boundary cases covered:

    • &#x10FFFF; (max valid) — still encodes as a surrogate pair
    • &#x110000; (max + 1) — "JSX entity escape is too big"
    • &#-1; (negative i32) — "JSX entity escape is too big"
    • &#2147483647; (i32::MAX) — "JSX entity escape is too big"

    Test added to test/bundler/transpiler/transpiler.test.js alongside
    the other JSX lexer tests. Without the fix the test binary panics in
    u16_lead; with the fix each out-of-range entity throws and the
    &#x10FFFF; boundary still compiles.

    Fixes #30958


    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@​users.noreply.github.com>

  • a7dca1 parser: gate class-static-block branch on is_class (#30967)

    Fixes #30963.

    Reproduction

    $ echo '[{static{}' > /tmp/repro.js
    $ bun-debug /tmp/repro.js
    panic: assertion failed: prop.key.is_some() || prop.value.is_some() (src/js_parser/parse/parse_prefix.rs:870:25)

    Release builds correctly emit a user-facing syntax error; only the debug
    assertion fires, because the assertion is gated on
    cfg!(debug_assertions).

    Cause

    src/js_parser/parse/parse_property.rs at the static { ... } branch
    entered the class-static-block path purely on identifier + {, without
    checking whether the enclosing context was a class body:

    } else if p.lexer.token == T::TOpenBrace && name == b"static" {
        // ... parse statements until `}` ...
        return Ok(Some(G::Property {
            kind: PropertyKind::ClassStaticBlock,
            class_static_block: Some(js_ast::StoreRef::from_bump(block)),
            ..Default::default()   // key = None, value = None
        }));
    }

    Every sibling branch in the same match (PStatic, PDeclare,
    PAbstract, PAccessor,
    PPrivate/PProtected/PPublic/POverride/PReadonly)
    already gates on opts.is_class; this one was the only exception. When
    invoked from the object-literal path
    (parse_prefix.rs::pfx_t_open_brace),
    opts.is_class is false and the returned property had neither key
    nor
    value, tripping the debug_assert in the caller.

    Fix

    Add opts.is_class && to the condition so static { ... } is only
    parsed
    as a class static block inside a class body. Outside a class body
    static
    now falls through to ordinary identifier handling and the trailing {
    produces a syntax error, matching release-mode behavior.

    The Zig sibling (parse_property.zig) had the same un-gated branch;
    it's
    updated in lockstep to keep the porting reference aligned.

    Test

    test/bundler/transpiler/transpiler.test.js — added four malformed
    object-literal cases ([{static{}, ({static{}}), ({static{};}),
    ({static{},})) alongside the existing "class static blocks" suite,
    each
    asserting a SyntaxError with Expected "}" but found "{".

    Verification

    • bun bd test test/bundler/transpiler/transpiler.test.js -t "class static blocks" — 1 pass, 24 expect() calls (130 filtered).
    • With the fix stashed, the same test panics at the original assertion
      site → confirms the test exercises the fix.
    • bun bd test test/cli/run/syntax.test.ts — 590 pass; valid class A{static{}} still works.
    • Full transpiler.test.js — 109 pass, 0 fail.

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@​users.noreply.github.com>

  • ba1562 Fix over-deref of Blob.name in borrowed_view() (#30955)

    What does this PR do?

    Fixes a SIGFPE crash that occurs when writing to a BunFile multiple
    times after reading its .name property, followed by a GC.

    const f = Bun.file("/tmp/test.txt");
    f.name;
    f.write("a").catch(() => {});
    f.write("b").catch(() => {});
    Bun.gc(true); // SIGFPE

    Root cause

    Blob::borrowed_view() constructed its name field via
    OwnedStringCell::new(self.name.get()), which copies the String value
    without bumping its refcount. The surrounding doc comment assumed
    name was Copy raw data with no Drop, but OwnedStringCell
    does implement Drop (it deref()s the inner String).

    So every time a borrowed_view() was dropped — which happens in
    BunFile.prototype.write(), Bun.write(file, ...), and
    WriteFile::create via PathOrBlob::Blob(...) — the original Blob's
    name StringImpl was deref'd without a matching ref.

    After two writes to a BunFile whose .name had been materialized, the
    StringImpl refcount hit 0 while the cached JSString in
    JSBlob::m_name still pointed at it. The next GC then hit
    StringImpl::costDuringGC()divideRoundedUp(len, refCount()) with
    refCount() == 0 → SIGFPE.

    Fix

    Clone the OwnedStringCell (which dupe_ref()s, balanced by its
    Drop), same as the store field already does.

    How did you verify your code works?

    Added regression tests to test/js/bun/io/bun-write.test.js covering
    file.write(), Bun.write(file, ...), and concurrent writes followed
    by GC. All crash on the unfixed binary and pass with the fix.

    Found by Fuzzilli (fingerprint db407a6431bfbfa7).

  • c47ec9 Validate Bun.password.hash memoryCost against argon2 minimum (#30964)

    Fixes #30960.

    Problem

    Bun.password.hash({ algorithm: "argon2id", memoryCost: N }) silently
    rounded up any N < 8 to 8 and emitted the clamped value in the
    encoded PHC string:

    const hash = await Bun.password.hash("test", {
      algorithm: "argon2id", memoryCost: 3, timeCost: 1,
    });
    // Actual:   m=8,t=1,p=1
    // Expected: an error, or m=3,t=1,p=1

    This is a 1.4.0 regression from the Rust port. The old Zig impl passed
    m through unchanged because its argon2 had a special clamp on working
    memory (@&ZeroWidthSpace;max(m_rounded_down, 2*sync_points*p)). rust-argon2 instead
    hard-rejects mem_cost < 8*lanes with MemoryTooLittle, and the port
    worked around that by clamping m up to 8 * p before the call — the
    clamped value is what got baked into the PHC output.

    Fix

    Validate at the JS argument-parsing boundary (AlgorithmValue::from_js
    in PasswordObject.rs) and reject memoryCost < 8 with "Memory cost
    must be at least 8". Bun hard-codes parallelism = 1, so 8 * parallelism == 8. The clamp in the pwhash shim is removed — with the
    validation in place, rust-argon2 sees only valid parameters and the
    user-provided value round-trips through the encoded hash.

    Docs (docs/runtime/hashing.mdx,
    docs/guides/util/hash-a-password.mdx) used memoryCost: 4 as an
    example; bumped to the documented minimum of 8.

    Verification

    $ bun bd /tmp/repro.ts
    error: Memory cost must be at least 8
    

    Added regression coverage in test/js/bun/util/password.test.ts:

    • invalid algorithm throws now also asserts that memoryCost of 1, 3,
      7 each throw with "Memory cost must be at least 8".
    • New argon2 memoryCost at the 8 minimum is encoded faithfully test
      confirms memoryCost: 8 produces m=8,t=1,p=1 in the PHC string and
      verifies round-trip.

    The stashed-src gate confirms the new assertions fail against unmodified
    source (clamp returns silently) and pass with the fix.

  • 390e0d Upgrade WebKit to 2b257999 (#30705)

    Upgrades WebKit to autobuild-preview-pr-231-2b257999 (commit
    2b257999114b) (Upgrade WebKit to 49d2e914a4cc oven-sh/WebKit#231 — ~755 upstream commits since
    5488984d20e0).

    Bun-side changes

    JSPromise rework (3f9955f695b6)

    JSPromise is no longer JSInternalFieldObjectImpl<2>. The
    getPromiseInternalField/putPromiseInternalField bytecode intrinsics
    and the promiseField*/promiseState* intrinsic constants were removed
    upstream. Added three C++ host functions exposed as private globals —
    $peekPromiseStatus(p) (0/1/2 = pending/fulfilled/rejected),
    $peekPromiseSettledValue(p), and $pokePromiseAsHandled(p) — and
    rewrote all 26 builtin call sites across Peek.ts, CommonJS.ts,
    BundlerPlugin.ts, StreamInternals.ts, WritableStreamInternals.ts,
    ReadableStreamInternals.ts, and internal/util/inspect.js. The
    $isPromiseFulfilled/$isPromiseRejected/$isPromisePending codegen
    macros now expand to $peekPromiseStatus(...) === N.

    C++ bindings (bindings.cpp, BunPlugin.cpp) that touched
    JSPromise::Field/internalField() switched to
    flags()/setFlags()/setSlot()/payloadCell().

    RapidHash (ee2220df2080)

    WTF replaced WyHash/SuperFastHash with RapidHash. The static-property
    lookup tables (*.lut.h) embed the string hash, so the
    create_hash_table perl script must produce the same hash the runtime
    computes. Replaced src/codegen/create_hash_table with the upstream
    RapidHash version and re-grafted Bun's ConstantInteger extension.
    Without this every static property on JSGlobalObject (Bun, fetch,
    process, ...) is invisible.

    JSType enum (24cf2e544f58)

    JSWebAssemblyStreamingContextType was inserted at slot 27 —
    src/jsc/JSType.rs/.zig re-numbered.

    WebAssembly streaming hooks

    compileStreaming/instantiateStreaming global hook signatures
    changed: the JSPromise* is now passed in instead of returned.

    JSModuleNamespaceObject/AbstractModuleRecord

    getModuleNamespace() gains a ModulePhase argument (import defer);
    Bun's shouldPreventExtensions parameter is preserved as a trailing
    default.

    Known regression (pre-existing investigation)

    Error inside minified file snapshot tests in inspect-error.test.js
    show an extra at require (native:50:24) frame. The require builtin's
    ImplementationVisibility::Private is no longer hiding the frame after
    the upstream PCH/builtin refactor — needs follow-up.


    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@​users.noreply.github.com>

  • 9ecb98 Fix FileSink.start() crash when called without path/fd on an open writer (#30953)

    What

    Fixes a debug assertion failure (fd != Fd::INVALID in
    src/sys/Error.rs) when calling .start() on a FileSink created by
    Bun.file(path).writer() with an options object that does not include a
    path or fd property.

    const writer = Bun.file("/tmp/out.txt").writer();
    writer.start({}); // panic: assertion failed: fd != Fd::INVALID

    Why

    Start::from_js_with_tag::<FileSink> returns Start::FileSink { input_path: Fd(Fd::INVALID), .. } when the options object has neither
    path nor fd. FileSink::start() then unconditionally called
    setup(), which called dup_with_flags(Fd::INVALID, 0). The fcntl
    fails with EBADF, and when building the error via
    .with_fd(Fd::INVALID) we hit the debug assertion.

    In Blob::get_writer the invalid-fd placeholder is always overwritten
    with the real file path/fd before start() is called, but the
    JS-exposed .start() has no such override.

    How

    Add a match guard in FileSink::start() to skip setup() when the
    incoming input_path is the invalid-fd placeholder — the writer is
    already configured, so we only update done/started/signal state as
    before. Calls with a real path or fd still re-run setup().

    Found by Fuzzilli.

  • ad68af Discourage comments
  • b18bf6 Bump (#30952)

    What does this PR do?

    How did you verify your code works?

  • 80a06a Add cargo-miri support and fix HiveArray aliasing UB (#30876)

    Fixes #30719

    Miri support

    Adds bun run rust:miri (scripts/rust-miri.ts), which runs cargo miri test over the FFI-free crate set (bun_collections, bun_paths,
    bun_clap, bun_base64, bun_hash, bun_wyhash, bun_ptr, bun_md,
    bun_ast, bun_dispatch, bun_errno, bun_http_types,
    bun_resolve_builtins, bun_shell_parser).

    Aliasing model is -Zmiri-tree-borrows, not the default Stacked
    Borrows. Stacked Borrows pops every raw pointer derived through &mut self the moment a later &mut self is formed — that's the entire
    premise of the slab/pool/slot types in this codebase. Tree Borrows is
    the candidate replacement spec, allows that pattern, and still catches
    the bugs we care about (UAF, OOB, uninit, races).

    Bit-rot fixes

    cargo test has never run on these crates. Enabling it surfaced compile
    errors and wrong assertions that have been there since the original
    port:

    • bun_collections: dead test stub needing generic_const_exprs, wrong
      type name, ambiguous init(), plus a cfg(miri) iteration-count guard.
    • bun_paths: back_then_forward expected previous() → None to
      rewind the cursor; it doesn't (matches std.fs.path.ComponentIterator).
      Plus 2 doc-comments that compiled as failing doctests.
    • bun_clap: the errors test expected unrecognized long flags to
      error; Bun's StreamingClap intentionally skips them (warn + continue).
    • bun_base64: test_base64_url_safe_no_pad fed unpadded input to
      decoder_with_ignore, which for URL_SAFE_NO_PAD is the padded
      decoder (the field is shared with URL_SAFE). Reworked the test helpers
      to feed each decoder the form it accepts; the impl is unchanged.
    • bun_ast: 3 doc-comments compiling as failing doctests.

    HiveArray interior mutability

    Tree Borrows immediately flagged HiveArray/Fallback/HiveRef as UB.
    The pool used &mut self receivers and handed out raw *mut T pointers
    into its internal buffer. Under noalias, any subsequent &mut self
    reborrow invalidates pointers derived from a prior one. This was a
    mechanical Zig→Rust translation: Zig's *Self carries no aliasing
    contract, but Rust's &mut self is noalias.

    Fix is the bumpalo/typed-arena shape — &self receivers + interior
    mutability:

    • HiveArray::bufferUnsafeCell<[MaybeUninit<T>; CAP]>. Slot
      pointers come from UnsafeCell::get() and survive &self reborrows.
      Made private; ptr_at() is the typed accessor.
    • HiveBitSet::masks[Cell<usize>; 32]. Same size, same alignment,
      no atomics; verified identical codegen.
    • All &mut self receivers → &self. HiveSlot::write() writes
      through a raw pointer.
    • HiveRef::ref_countCell<u32>; unref(this: *mut Self) (not a
      protected &mut self it would then free through the pool back-pointer).
    • New HiveRefHandle<T, CAP> smart pointer — Clone/Drop track the
      refcount, into_raw()/from_raw() for raw round-trips, get_mut()
      instead of DerefMut (a blanket DerefMut on a shared-ownership handle
      is unsound). Safe API; unsafe only at raw-pointer ingress.

    Adds 11 tests covering the previously-untested API surface. All 13 hive
    tests pass under MIRIFLAGS=-Zmiri-tree-borrows cargo miri test -p bun_collections hive_array with no ignores.

    HiveRefHandle migration

    Request.body and RequestContext.request_body migrated from raw
    NonNull + manual ref/unref to HiveRefHandle. Value::ref_/unref
    deleted (they recovered the parent HiveRef from a *mut Value via
    offsetof, only needed because RequestContext held a payload
    pointer). The RuntimeHooks.init_request_body_value vtable slot
    deleted: its only caller and only impl were both in bun_runtime. Net
    unsafe delta across the touched files: −17.

    Verification

    cargo +nightly check --workspace                                # clean
    cargo +nightly test -p bun_collections                          # 35 passed
    MIRIFLAGS=-Zmiri-tree-borrows cargo +nightly miri test -p bun_collections hive_array  # 13 passed, 0 ignored
    bun run rust:miri                                               # all 14 crates pass

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@​users.noreply.github.com>

  • 035add install: reuse existing folder/tarball entry in package.json (#30935)

    Fixes #30933 (and finishes #30499, which was never ported to the Rust
    PackageJSONEditor).

    Repro

    mkdir /tmp/myproject && cd /tmp/myproject
    cat > package.json <<'JSON'
    { "name": "myproject", "version": "1.0.0", "bin": { "myproject": "./index.js" } }
    JSON
    echo 'console.log("hi")' > index.js
    
    export BUN_INSTALL_GLOBAL_DIR=/tmp/g BUN_INSTALL_BIN=/tmp/b
    mkdir -p \"\$BUN_INSTALL_GLOBAL_DIR\" \"\$BUN_INSTALL_BIN\"
    
    bun add -g /tmp/myproject   # 1st — clean
    bun add -g /tmp/myproject   # 2nd — duplicates
    
    cat /tmp/g/package.json
    # {
    #   \"dependencies\": {
    #     \"myproject\": \"/tmp/myproject\",
    #     \"myproject\": \"/tmp/myproject\"   <- dup
    #   }
    # }

    Enough repeat runs make the lockfile unparseable:

    error: Duplicate package path
        at bun.lock:XXX:5
    InvalidPackageKey: failed to parse lockfile: 'bun.lock'
    

    Also reproduces without -g — any `bun add ` run twice
    duplicates the entry. It's the folder-install code path, not the
    global-install code path, that's broken. The same shape also regresses
    `bun add ` (previously fixed in #30499 for the Zig file,
    which is no longer compiled after the Rust port).

    Cause

    `PackageJSONEditor::edit`'s initial name-match phase looks up the
    existing entry by `UpdateRequest::get_name()`. For a non-aliased
    folder/path/tarball positional, `get_name()` returns the version
    literal (the path/URL the user typed), not the resolved package name,
    so `query.expr.as_property(name)` never finds the existing
    `""` key and the code falls through to the append path.

    The fallback URL-value-match loop below only fired for `Tag::Github` /
    `Tag::Git`, so `.folder` and `.tarball` both fell through to the
    append path. `get_resolved_name(lockfile)` then returned the real
    package name (`"myproject"`) which was written as a second key
    next
    to the existing `"myproject": "/tmp/myproject"` entry — producing
    two keys with the same name.

    Fix

    Extend the fallback URL/path-match loop to also match on `.tarball`
    and `.folder`, skip it when the user wrote `alias@​url` (that form is
    an explicit request to key by `alias`, so consolidating into an
    existing entry under a different name would silently drop the alias),
    and guard on `request.e_string.is_none()` so a match in an earlier
    dependency list (e.g. `dependencies`) isn't re-counted when the
    outer loop continues to the remaining lists (`devDependencies`, etc.).

    The `.zig` sibling is kept aligned as a porting reference (it is no
    longer compiled — CLAUDE.md: "not compiled, not shipped").

    Verification

    Two regression tests added in `test/cli/install/bun-add.test.ts`:

    • `should not add duplicate package.json entries when installing the
      same local folder twice (#30933)` — this issue.
    • `should not add duplicate package.json entries when installing the
      same tarball URL twice (#30499)` — re-port of the test dropped during
      the Rust rewrite.

    Gate:

    • `USE_SYSTEM_BUN=1 bun test test/cli/install/bun-add.test.ts -t
      '30933|30499'` — both fail on the duplicate `"":` key.
    • `bun bd test test/cli/install/bun-add.test.ts -t '30933|30499'` —
      both pass with the fix.

    Existing tests that exercise the same fallback still pass:

    • `should add local tarball dependency` ✅
    • `should add dependency without duplication` ✅
    • `should add aliased dependency (npm)` ✅

    Supersedes #30500 (which targeted the `.zig` file only).


    Co-authored-by: robobun <robobun@​users.noreply.github.com>

  • 655398 encoding: fix Vec->Vec layout UB in fs.readFile utf16le path (#30926)

    Summary

    Fixes a Vec allocator-layout UB in to_bun_string_from_owned_slice's
    Ucs2/Utf16le arm — the sole code path for fs.readFile(path, { encoding: "utf16le" | "ucs2" }).

    What was wrong

    The arm took an owned Vec<u8> and rebuilt it as a Vec<u16> via
    Vec::from_raw_parts(ptr.cast::<u16>(), len/2, cap/2), then handed that
    to WebKit's external-string deallocator. This is a direct port of the
    Zig original's @&ZeroWidthSpace;alignCast(bytesAsSlice(u16, …)), but Rust's Vec is
    stricter:

    • Vec::from_raw_parts requires that T's alignment equal the
      alignment of the original allocation. Vec<u8> allocates with Layout
      align 1; reclaiming as Vec<u16> makes the eventual dealloc use align
    • Per alloc::alloc::dealloc's safety contract, the Layout used to
      free must match the one used to allocate. Mismatched align is UB.

    The TODO(port) comment above the code already called this out:

    Reinterpreting a Vec<u8> as Vec<u16> is not generally sound in
    Rust (alignment + allocator layout).

    Why it never crashed

    mimalloc gives us over-aligned (>= 8 byte) pointers, so the layout
    mismatch is benign in practice on the allocator we ship. Miri would flag
    it, and a future allocator change would surface it as either a crash on
    free or silent heap corruption.

    The fix

    Mirror the already-merged solution in construct_from_u16's utf16le arm
    (same file). That arm had the symmetric Vec<u16> -> Vec<u8>
    reinterpret problem when porting from Zig, and the porter resolved it
    the same way — comment from encoding.rs:786-789:

    The Zig original allocated u16-aligned then reinterpreted the Vec
    header to u8, which is allocator-layout-dependent in Rust; a fresh u8
    Vec sidesteps that…

    Same shape here, opposite direction: allocate a fresh Vec<u16> and
    copy the input bytes into it via bytemuck::cast_slice_mut. Sound by
    construction — the Vec is allocated and freed with the same Layout.

    - // TODO(port): Zig reinterpreted the owned u8 allocation as []u16 ...
    - let as_u16 = unsafe {
    -     let mut input = core::mem::ManuallyDrop::new(input);
    -     Vec::from_raw_parts(
    -         input.as_mut_ptr().cast::<u16>(),
    -         usable_len / 2,
    -         input.capacity() / 2,
    -     )
    - };
    + let mut as_u16 = vec![0u16; usable_len / 2];
    + let dst: &mut [u8] = bytemuck::cast_slice_mut(&mut as_u16);
    + dst.copy_from_slice(&input[..usable_len]);
      create_external_globally_allocated_utf16(as_u16)

    Tradeoff

    One extra usable_len-byte memcpy on the fs.readFile(path, "utf16le"|"ucs2") hot path. For typical file sizes (KB-MB) this is
    negligible. The zero-copy path can be restored later by adding a
    bun_core::String constructor that accepts (ptr, len, cap, dtor)
    exactly what the original TODO(refactor) suggested.

    Sole caller

    src/runtime/node/node_fs.rs:7071 — the fs.readFile(path, { encoding }) return-as-string path, when the encoding is utf16le or ucs2
    (Latin-1/UTF-8 paths take separate arms and aren't affected).

    Test plan

    • bun bd test test/regression/issue/utf16-encoding-crash.test.ts
      fs.readFileSync(path, "utf16le") plus "ucs2", including a 256 KB + 1
      byte case that hits the dynamic-allocation branch
    • bun bd test test/js/node/buffer-utf16.test.ts
      Buffer.from(str, "utf-16le") roundtrip
    $ bun bd --asan=off test test/regression/issue/utf16-encoding-crash.test.ts test/js/node/buffer-utf16.test.ts
     3 pass
     0 fail
     9 expect() calls
    

    No new tests added — this is a soundness fix, not a behavior fix. The
    existing tests already exercise the relevant code path (fs.readFile
    with utf16le/ucs2 encodings, including the >256 KB
    dynamic-allocation branch); their pre/post-fix behavior is identical, as
    expected.

    🤖 Generated with Claude Code

    Co-authored-by: Khang Le Duy <khangl@​nvidia.com>
    Co-authored-by: Claude Opus 4.7 (1M context) <noreply@​anthropic.com>

  • c7a757 Collapse ThreadPool::init dead generic and fix cpuid cfg gate (#30886)

    ThreadPool::init dead generic. bundler::ThreadPool::init (and its
    helper init_with_pool) were generic over V2 because, during the
    phased Zig→Rust port, bundle_v2.rs carried two BundleV2 definitions
    — the canonical one plus a bv2_impl draft module — and both needed to
    call init. The PORT NOTE on the function explicitly said it should
    collapse to &BundleV2<'_> once bv2_impl was dropped. That module is
    gone (grep -rn "struct BundleV2" src/bundler/ finds exactly one
    definition, bundle_v2.rs:75), so this collapses the generic, names the
    concrete type, and drops the now-stale PORT NOTE. The body was already
    storing a type-erased raw pointer, so the monomorphised code is
    identical.

    cpuid cfg-gate mismatch. perf/hw_timer.rs defines struct CpuidResult and fn cpuid() under #[cfg(target_arch = "x86_64")],
    but their only callers live inside a #[cfg(not(any(target_os = "macos", target_os = "freebsd")))] block (macOS/FreeBSD read the boot-time TSC
    frequency from sysctl instead of probing CPUID). On
    x86_64-apple-darwin and x86_64-unknown-freebsd the helpers were
    therefore compiled with no callers, producing never constructed /
    never used warnings. The cfg gates now mirror the callers' conditions.

    Verified with cargo check --workspace --keep-going (clean), bun run rust:check-all (10/10 targets), and cargo fmt -p bun_bundler -p bun_perf --check. Confirmed the dead-code warnings on
    x86_64-apple-darwin are present without this change and gone with it.
    File set is disjoint from #30879.

  • 172afa Replace bun assert helpers with Rust builtin assert macros (#30918)
  • 945b89 perf: bundler & transpiler hot-path optimizations (#30901)
  • 112f30 refactor: remove unsafe for static strings (#30867)

    What does this PR do?

    Removes unnecessary str::from_utf8_unchecks calls for static slices.

    How did you verify your code works?

    Trivial conversion.

  • e75098 cargo fmt
  • 880ee8 Clean up Zig-port phase comments and trivial lint warnings (#30877)

    What

    Removes the ~1,750 stale "Phase A" / "Phase B" references the Zig→Rust
    port left across ~600 files. The port phases are complete; the
    references confuse what's a real TODO vs. a finished process step.
    Comments that encode real deferred work (e.g. PERF(port): was X — profile in Phase B) keep the substance and drop the phase framing
    (PERF(port): was X — profile if hot.). Comments that only describe
    past process steps are removed.

    Also fixes the trivial lint warnings cargo check surfaced along the way:
    unused imports, an unnecessary unsafe block over a safe extern "C" fn, unreachable_pub items, ambiguous glob re-exports, an unused
    #[must_use] result, and a private-type-in-public-alias. Two
    SAFETY/rustdoc comments that referenced API methods removed in a
    follow-up are rewritten to name the current entry points.

    What this is not

    No behavior changes. No public API changes. The hive-pool deprecation
    warnings (HiveArrayFallback::get/try_get) are not silenced here — the
    call sites are migrated to the safe API in a follow-up PR.

    Verification

    • cargo check --workspace clean for everything this PR touches
    • cargo fmt --all applied
    • bun run rust:check-all (all 6 target triples)
    • e52006 Harden 36 reachable security findings across runtime, install, parsers, http (#30722)

    Hardens 36 reachable security findings across the runtime, package
    manager, parsers, HTTP client/server, and SQL drivers. Three
    auto-applied fixes (Bump @michijs/dev-server from 0.7.26 to 0.8.3 #61 SSL exception leak, [master] Michijs Dependabot changes #68 YAML merge dedup, Bump storybook from 9.1.3 to 9.1.19 #104
    archive overwrite precheck) were dropped: Bump @michijs/dev-server from 0.7.26 to 0.8.3 #61 introduced a
    use-after-free, [master] Michijs Dependabot changes #68 stored a non-'static byte view in a 'static
    field, and Bump storybook from 9.1.3 to 9.1.19 #104 added dead gating that did not close the traversal.

    Memory safety / lifetime

    Untrusted-input bounds / panics

    DoS / resource caps

    Auth / injection / traversal

    Permission hygiene

    Parser correctness

    Summary

    • ~SourceProvider() derefs m_resolvedSource.specifier and
      .source_url (introduced in c713ab53130b to fix a leak), which requires
      every ResolvedSource producer to hand those BunStrings in as +1.
    • The synthetic-module paths in jsc_hooks.rs (bun:main, bun:wrap,
      macro:, standalone-graph, embedded sqlite) stored a bitwise copy of
      the borrowed specifier (*specifier) with no extra ref, so the
      destructor over-derefs. The atom impl frees while a JSString in the
      worker heap still references it, and once that slot is reused,
      Heap::lastChanceToFinalize trips RELEASE_ASSERT(wasRemoved) in
      AtomStringImpl::remove during worker VM teardown — symptom is a
      SIGABRT on a random atom string.
    • Fix: specifier.dupe_ref() for both specifier and source_url on
      the paths whose ResolvedSource flows into
      Zig::SourceProvider::create(), matching
      RuntimeTranspilerStore::run_from_js_thread.

    Test plan

    • test/js/node/test/parallel/test-worker-console-listeners.js
      480/480 clean (was ~5/240 SIGABRT) with BUN_DESTRUCT_VM_ON_EXIT=1
      under 8× parallel debug-build loop
    • test/js/node/test/parallel/test-crypto-worker-thread.js
      400/400 clean under the same harness
    • Diagnostic heap walk before ~VM confirms worker heaps no longer
      hold a bun:main JSString whose StringImpl is absent from the
      worker's atom table (foreign=1foreign=0)
    • 8438ff resolver: split the port's module wrapper into files; type the extern-Rust pointers (#30880)

    What

    Module split

    The Zig→Rust port wrapped the entire resolver implementation in a single
    7,664-line pub mod __phase_a_body { ... } inside src/resolver/lib.rs
    (lines 2609–10,273) — a port artifact ("this is the
    mechanically-translated block"). There's no name for a module that wraps
    a crate's whole body that isn't redundant, which is the tell the wrapper
    shouldn't exist. Split it into sibling files following the crate's
    existing convention (data_url.rs / dir_info.rs / package_json.rs):

    File Lines Holds
    options.rs 357 BundleOptions, Packages, ExternalModules,
    Framework, ExtOrder, …
    result.rs 578 Result, MatchResult, PathPair, DebugLogs,
    PendingResolution, LoadResult, …
    resolver.rs 6,640 Resolver struct + impl, threadlocal Bufs,
    local shim modules
    standalone_module_graph.rs 30 the StandaloneModuleGraph trait

    |
    | allocators.rs | 6 | re-exports referenced cross-file from
    dir_info.rs |

    lib.rs shrinks 10,273 → 2,615 lines. Public API surface is
    byte-identical — bun_resolver::Resolver, ::Result, ::options, …
    all resolve as before.

    Typed extern-Rust pointers

    Un-erase the extern "Rust" link-time pointers where the declaring
    crate already names the type. The port applied "type-erase across the
    crate boundary" uniformly to every #[no_mangle] upward call, but
    extern "Rust" carries full Rust types — both crates can name the
    parameters. Where visible, use the typed pointer with the Zig pointer
    shape (NonNull<T> for *T, Option<NonNull<T>> for ?*T):

    • __bun_resolver_init_package_manager: log: *mut Log
      NonNull<Log>, install: *const ()Option<NonNull<BunInstall>>,
      env: *mut c_voidNonNull<Loader<'static>>
    • `BundleOptions.insta

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump storybook-dark-mode from 4.0.2 to 5.0.0

Changelog:
Sourced from releases.
        ### v5.0.0#### 💥 Breaking Change

🏠 Internal

Authors: 2

Authors: 1

Commit history:
  • 0fe31a Bump version to: 5.0.0 [skip ci]
  • 37ff57 Update contributors [skip ci]
  • ee3b5e Update CHANGELOG.md [skip ci]
  • ddf5d6 Merge pull request #307 from hipstersmoothie/v10

    Storybook V10 Compatibility

  • d10d8b Upgrade to strorybook 10
  • f9048f move to pnpm and get example working
  • 9347ae Merge pull request #278 from dartess/update-actions

    update actions/*

  • 9a5d67 Bump version to: 4.0.2 [skip ci]
  • c53228 Update contributors [skip ci]
  • 28fa4b Update CHANGELOG.md [skip ci]
  • 52fe0d Merge pull request #279 from adam-golab/master

    Fix for the "Storybook preview hooks can only be called inside decorators and story functions." error

  • 7342b9 fix: use the useEffect from storybook preview api
  • 153f21 fix: use useState hook from storybook preview api
  • fa7ca8 update actions
  • efbd14 Bump version to: 4.0.1 [skip ci]
  • 143e9d Update contributors [skip ci]
  • 9d8d9d Update CHANGELOG.md [skip ci]
  • 07efab Merge pull request #266 from leiit/fix-use-darkmode

    Fix useDarkMode to use correct channel

  • 576b40 Fix useDarkMode to use correct addons channel
  • df8d44 Add test story for useDarkMode
  • 8c055e Add typings & StoryObj format for Button story
  • 48638c Merge pull request #253 from hipstersmoothie/renovate/storybook-icons-1.x-lockfile

    Update dependency @​storybook/icons to v1.2.9

  • 50fc77 Bump version to: 4.0.0 [skip ci]
  • 30c0de Update contributors [skip ci]
  • 3d9bb6 Update CHANGELOG.md [skip ci]
  • 2f4f53 update auto
  • 550fe3 Update dependency @​storybook/icons to v1.2.9
  • d2f988 Merge pull request #251 from dartess/storybook-8

    Storybook 8

  • 319fe2 up node version in github workflows
  • fa60c8 update storybook to v8 stable

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump @​storybook/addon-docs from 9.1.3 to 10.4.0

Changelog:
Sourced from releases.
        ### v10.5.0-alpha.0## 10.5.0-alpha.0




        ### v10.4.0## 10.4.0

AI-assisted setup, change-aware review, and stronger framework support

Storybook 10.4 contains hundreds of fixes and improvements including:

  • 🤖 Agentic Setup: New CLI workflow for AI-assisted Storybook setup and onboarding
  • 🔍 Change review: Sidebar filtering to highlight new, modified, and related stories based on git changes
  • 🧭 Sidebar review tools: Status filtering, URL-persisted filters, and clearer review signals in the sidebar
  • ⚛️ TanStack React: New `@​storybook/tanstack-react` framework with routing and server function support
  • 🧩 React MCP: Faster, more accurate component docgen powered by the TypeScript Language Server
  • 📱 React Native: Zero config RN project initialization
  • 🤝 Sharing: Easily publish and share your local Storybook with teammates, powered by Chromatic
List of all updates
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!
  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!
  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!
  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!
  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!
  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!
  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!
  • CLI: Change mock event detection - #34586, thanks @​yannbf!
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!
  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!
  • CLI: Fix agentic check - #34678, thanks @​yannbf!
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!
  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!
  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!
  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!
  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!
  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!
  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!
  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!
  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!
  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!
  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!
  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!
  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!
  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!
  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!
  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!
  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!
  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!
  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!
  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!
  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!
  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!
  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!
  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!
  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!
  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!
  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!
  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!
  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!
  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!
  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!
  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!
  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!
  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!
  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!
  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!
  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!
  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!
  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!
  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!
  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!
  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!
  • ReactNative: New init setup - #34665, thanks @​ndelangen!
  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!
  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!
  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!
  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!
  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!
  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!
  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!
  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!
  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!
  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!
  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!
  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!
  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!
  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!
  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!
  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!
  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!
  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!
  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!
  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!
  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!
  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!
  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!
  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!
        ### v10.4.0-beta.0## 10.4.0-beta.0
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!

  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!

  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!

  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!

          ### v10.4.0-alpha.19## 10.4.0-alpha.19
    
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!

  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!

  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!

  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!

  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!

  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!

  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!

  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!

  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!

  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!

  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!

          ### v10.4.0-alpha.18## 10.4.0-alpha.18
    
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!

  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!

  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!

  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!

  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!

  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!

  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!

  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!

  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.17## 10.4.0-alpha.17
    
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!

  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!

  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!

  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!

  • ReactNative: New init setup - #34665, thanks @​ndelangen!

  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!

  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!

          ### v10.4.0-alpha.16## 10.4.0-alpha.16
    
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!

  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!

  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!

  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!

          ### v10.4.0-alpha.15## 10.4.0-alpha.15
    
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!

          ### v10.4.0-alpha.14## 10.4.0-alpha.14
    
  • CLI: Fix agentic check - #34678, thanks @​yannbf!

          ### v10.4.0-alpha.13## 10.4.0-alpha.13
    
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!

  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!

          ### v10.4.0-alpha.12## 10.4.0-alpha.12
    
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!

          ### v10.4.0-alpha.11## 10.4.0-alpha.11
    
  • CLI: Change mock event detection - #34586, thanks @​yannbf!

  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!

  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.3.6## 10.3.6
    
  • ESLint: Update deprecated @​storybook/test reference to storybook/test - #34430, thanks @​venkat22022202!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.4.0-alpha.10## 10.4.0-alpha.10
    
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!

  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.9## 10.4.0-alpha.9
    
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!

  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!

  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!

  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!

  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!

  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!

  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!

  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!

  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!

          ### v10.4.0-alpha.8## 10.4.0-alpha.8
    
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!

  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!

  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!

  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!

  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!

  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!

          ### v10.3.5## 10.3.5
    
  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

[!NOTE]
Version >=0.5.0 of @&ZeroWidthSpace;storybook/addon-mcp enables component manifests again. If you're upgrading Storybook from version >= 10.3.0 to >= 10.3.5 and are using the MCP addon, you should also upgrade @&ZeroWidthSpace;storybook/addon-mcp to keep the docs toolset in the MCP server.

        ### v10.4.0-alpha.7## 10.4.0-alpha.7
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!

  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!

  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!

  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!

  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!

          ### v10.3.4## 10.3.4
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

          ### v10.4.0-alpha.6## 10.4.0-alpha.6
    
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!

  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!

  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!

  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!

  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!

  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!

  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!

          ### v10.4.0-alpha.5## 10.4.0-alpha.5
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!

  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!

  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!

          ### v10.4.0-alpha.4## 10.4.0-alpha.4
    
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!

  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!

  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!

  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!

  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!

  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!

          ### v10.4.0-alpha.3## 10.4.0-alpha.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.3.3## 10.3.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

          ### v10.3.2## 10.3.2
    
  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.4.0-alpha.2## 10.4.0-alpha.2
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!

  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!

          ### v10.4.0-alpha.1## 10.4.0-alpha.1
    
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!

          ### v10.3.1## 10.3.1
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

          ### v10.4.0-alpha.0## 10.4.0-alpha.0
    
    
    
    
          ### v10.3.0## 10.3.0
    

> Improved developer experience, AI-assisting tools, and broader ecosystem support

Storybook 10.3 contains hundreds of fixes and improvements including:

  • 🤖 Storybook MCP: Agentic component dev, docs, and test (Preview release for React)
  • ⚡ Vite 8 support
  • ▲ Next.js 16.2 support
  • 📝 ESLint 10 support
  • 〰️ Addon Pseudo-States: Tailwind v4 support
  • 🔧 Addon-Vitest: Simplified configuration - no more setup files required
  • ♿ Numerous accessibility improvements across the UI
List of all updates
  • A11y: Add ScrollArea prop focusable for when it has static children - #33876, thanks @​Sidnioulz!
  • A11y: Ensure popover dialogs have an ARIA label - #33500, thanks @​gayanMatch!
  • A11y: Make resize handles for addon panel and sidebar accessible #33980
  • A11y: Underline MDX links for WCAG SC 1.4.1 compliance - #33139, thanks @​NikhilChowdhury27!
  • Actions: Add expandLevel parameter to configure tree depth - #33977, thanks @​mixelburg!
  • Actions: Fix HandlerFunction type to support async callback props - #33864, thanks @​mixelburg!
  • Addon-Docs: Add React as optimizeDeps entry - #34176, thanks @​valentinpalkovic!
  • Addon-Docs: Add support for `sourceState: 'none'` to canvas block parameters - #33627, thanks @​quisido!
  • Addon-docs: Restore `docs.components` overrides for doc blocks #34111
  • Addon-Vitest: Add channel API to programmatically trigger test runs - #33206, thanks @​JReinhold!
  • Addon-Vitest: Handle additional vitest config export patterns in postinstall - #34106, thanks @​copilot-swe-agent!
  • Addon-Vitest: Make Playwright `--with-deps` platform-aware to avoid `sudo` prompt on Linux #34121
  • Addon-Vitest: Refactor Vitest setup to eliminate the need for a dedicated setup file - #34025, thanks @​valentinpalkovic!
  • Addon-Vitest: Support Vitest canaries - #33833, thanks @​valentinpalkovic!
  • Angular: Add moduleResolution: bundler to tsconfig - #34085, thanks @​valentinpalkovic!
  • Angular: only load webpack dependencies on demand - #34043, thanks @​sod!
  • Angular: Storybook fails with unknown option silent - #33736, thanks @​tanujbhaud!
  • Build: Update @​types/node - #34037, thanks @​valentinpalkovic!
  • Builder-Vite: Centralize Vite plugins for builder-vite and addon-vitest - #33819, thanks @​valentinpalkovic!
  • Builder-Vite: Fix cold-cache vitest failures for story paths containing glob special characters - #34044, thanks @​copilot-swe-agent!
  • Builder-Vite: Use preview annotations as entry points for optimizeDeps - #33875, thanks @​copilot-swe-agent!
  • CI: declare explicit permissions for stale and weekly cron workflows - #33902, thanks @​Rohan5commit!
  • CLI: Add vike CLI metadata - #34189, thanks @​yannbf!
  • CLI: Avoid hanging of postinstall during init - #34175, thanks @​valentinpalkovic!
  • CLI: Fix onboarding not opening - #33609, thanks @​ndelangen!
  • CLI: Show multiple favicons warning as debug message - #34069, thanks @​remino!
  • Cli: Use npm for registry URL in PNPMProxy to avoid workspace errors - #33571, thanks @​ia319!
  • Controls: Allow story argTypes to override control: false from meta - #33729, thanks @​jonathan-fulton!
  • Controls: Fix Object contrast issue and tidy up code - #33923, thanks @​Sidnioulz!
  • Core: Ensure telemetry is never triggered on initial load of checklist data - #33918, thanks @​ghengeveld!
  • Core: Fix event source URL based on refId when multiple iframes share the same origin #34105
  • Core: Fix false-positive CJS warning when 'exports' appears in strings or comments - #33572, thanks @​reeseo3o!
  • Core: Fix handling complex viewport sizes #33615
  • Core: Fix iframe reference for composed Storybook on a subpath #34100
  • Core: Fix typos: occured -> occurred, recieves -> receives - #33727, thanks @​jonathan-fulton!
  • Core: Handle BROWSER=none correctly and improve error messages - #33730, thanks @​jonathan-fulton!
  • Core: Ignore empty files when indexing - #33782, thanks @​JReinhold!
  • Core: Register CORS middleware before index.json route - #33728, thanks @​jonathan-fulton!
  • Core: Revert Pull Request #33420 from Maelryn/fix/copy-button-overlap - #33877, thanks @​Sidnioulz!
  • Core: Zoom tool refinements - Hide reset button when value is initial - #33635, thanks @​superLipbalm!
  • Docs: Edit JSON button is now accessible at 320x256 viewport (WCAG 2.1 Reflow test) - #33707, thanks @​TheSeydiCharyyev!
  • Docs: Make CSS ordering in DocsContainer more predictable #34015
  • ESLint-plugin: Disallow extra properties in eslint plugin rule options - #32056, thanks @​andreww2012!
  • ESLint: bail out config setup if eslint-plugin-storybook is already imported - #34089, thanks @​copilot-swe-agent!
  • HMR: Fix race conditions causing stale play functions to fire on re-rendered stories - #33930, thanks @​copilot-swe-agent!
  • Maintenance: Revert pull request #33930 HMR events - #34190, thanks @​yannbf!
  • Maintenance: Use std-env for AI agent detection in telemetry #34114
  • Manifest: Add docs entries to debugger - #33607, thanks @​JReinhold!
  • Manifest: Rename `experimentalComponentsManifest` → `componentsManifest`, default to `true` #33974
  • Manifests: Fix Attached MDX causing wrong component entries #34101
  • Next.js-Vite: Fix failing postcss mutation - #33879, thanks @​valentinpalkovic!
  • Next.js: Move image configuration from FrameworkOptions to parameters #32639, thanks @​y-hsgw!
  • Preact: Support inferring props from component types - #33828, thanks @​JoviDeCroock!
  • React Native Web: Fix inconsistent example stories - #33891, thanks @​danielalanbates!
  • React: Add react-docgen-typescript to component manifest - #33818, thanks @​kasperpeulen!
  • Revert "Toolbar: Remove extra toolbar divider when zoom controls not shown" - #34099, thanks @​valentinpalkovic!
  • Test: Fix clearing mocks in Vitest #34078
  • Test: Update @​testing-library/jest-dom - #33928, thanks @​valentinpalkovic!
  • Theming: Export interface declaration for `ThemesGlobals` - #33343, thanks @​icopp!
  • Toolbar: Remove extra toolbar divider when zoom controls not shown - #33731, thanks @​jonathan-fulton!
  • UI: Allow direct kb/mouse actions on zoom tool button - #33496, thanks @​Sidnioulz!
  • UI: Avoid large animation for reduced motion users - #33530, thanks @​Sidnioulz!
  • UI: Ensure Link without href is keyboard-reachable - #34163, thanks @​Sidnioulz!
  • UI: Fix `z-index` problem with `popover`s and `modal`s nesting - #33757, thanks @​ndelangen!
  • UI: Fix code/copy buttons overlap with content - #33889, thanks @​Sidnioulz!
  • UI: Fix Copy button overlapping code in portrait mode - #33420, thanks @​Maelryn!
  • UI: Fix modal text selection - #33967, thanks @​Sidnioulz!
  • UI: Fix tab navigation after closing addon panel - #33971, thanks @​copilot-swe-agent!
  • UI: Handle kb nav edge cases when preview and panel are hidden - #33588, thanks @​Sidnioulz!
  • UI: Hide addon panel Drag on pages without a panel - #34162, thanks @​Sidnioulz!
  • UI: Hide manifest tag for now - #34165, thanks @​Sidnioulz!
  • UI: Make disabled Buttons keyboard-focusable - #34166, thanks @​Sidnioulz!
  • UI: Make TagsFilter state persistent #33374
  • UI: Use correct selector for addon panel focus check - #34164, thanks @​Sidnioulz!
  • UI: Zoom faster when pressing shift - #34185, thanks @​Sidnioulz!
  • Viewport: Skip viewport validation before parameters load - #33794, thanks @​ia319!
  • Vite: Add mock entries to optimizeDeps.entries - #34167, thanks @​valentinpalkovic!
  • Vue3-Vite: Allow paths in docgen tsconfig option #32310, thanks @​Thomaash!
Commit history:
  • 7c9e28 Bump version from "10.4.0" to "10.5.0-alpha.0" [skip ci]
  • 0c1ae9 Release: Preminor alpha 10.5.0-alpha.0

    Release: Preminor alpha 10.5.0-alpha.0

  • fba414 Write changelog for 10.5.0-alpha.0 [skip ci]
  • f8c16d Bump version from "10.4.0-beta.0" to "10.4.0" [skip ci]
  • a2220d Merge pull request #34796 from storybookjs/version-non-patch-from-10.4.0-beta.0

    Release: Minor 10.4.0

  • 3c907e add sharing to changelog
  • ddd0f9 improve changelog
  • 891d64 add initial minor changelog
  • 9e7772 Write changelog for 10.4.0 [skip ci]
  • e02da0 Bump version from "10.4.0-alpha.19" to "10.4.0-beta.0" [skip ci]
  • 7b2de0 Merge pull request #34789 from storybookjs/version-non-patch-from-10.4.0-alpha.19

    Release: Prerelease beta 10.4.0-beta.0

  • 3b07e6 Write changelog for 10.4.0-beta.0 [skip ci]
  • 589f29 Merge pull request #34788 from storybookjs/next-release

    Build: Merge next-release into next

  • 6fe595 Merge branch 'next' into next-release
  • f9810c Merge pull request #34769 from storybookjs/jeppe/handle-minimum-release-age

    CLI: Handle minimumReleaseAge conflicts across package managers

  • db9d52 format
  • bdc688 fix documentation string
  • eed7d2 simplify error handling
  • d69581 Merge pull request #34783 from storybookjs/jeppe/fix-vite8-svelte

    Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner

  • 27d818 Merge pull request #34786 from storybookjs/valentin/change-detection-docs-in-preview

    Docs: Add in preview notice for change detection

  • f1b35f Docs: Add in preview notice for change detection
  • a5d674 Merge pull request #34782 from storybookjs/yann/fix-payload-names

    Maintenance: Fix self healing payload

  • fd0b83 Fix Vite 8 + Vitest + Svelte breaking rolldown deps scanner
  • 429fb3 Bump version from "10.4.0-alpha.18" to "10.4.0-alpha.19" [skip ci]
  • 1a50c0 Merge pull request #34773 from storybookjs/version-non-patch-from-10.4.0-alpha.18

    Release: Prerelease alpha 10.4.0-alpha.19

  • 8eb16b unknown errors during precheck should not halt the process completely.
  • d1d63f fix type
  • 79a866 format
  • 3ebdd0 undo the "run" prefix on ghost stories and self healing payload
  • abf3c2 detect when minimumReleaseAgeExclude is already correctly configured, add VTA to list of excludes

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump @​storybook/web-components-vite from 9.1.3 to 10.4.0

Changelog:
Sourced from releases.
        ### v10.5.0-alpha.0## 10.5.0-alpha.0




        ### v10.4.0## 10.4.0

AI-assisted setup, change-aware review, and stronger framework support

Storybook 10.4 contains hundreds of fixes and improvements including:

  • 🤖 Agentic Setup: New CLI workflow for AI-assisted Storybook setup and onboarding
  • 🔍 Change review: Sidebar filtering to highlight new, modified, and related stories based on git changes
  • 🧭 Sidebar review tools: Status filtering, URL-persisted filters, and clearer review signals in the sidebar
  • ⚛️ TanStack React: New `@​storybook/tanstack-react` framework with routing and server function support
  • 🧩 React MCP: Faster, more accurate component docgen powered by the TypeScript Language Server
  • 📱 React Native: Zero config RN project initialization
  • 🤝 Sharing: Easily publish and share your local Storybook with teammates, powered by Chromatic
List of all updates
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!
  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!
  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!
  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!
  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!
  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!
  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!
  • CLI: Change mock event detection - #34586, thanks @​yannbf!
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!
  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!
  • CLI: Fix agentic check - #34678, thanks @​yannbf!
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!
  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!
  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!
  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!
  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!
  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!
  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!
  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!
  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!
  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!
  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!
  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!
  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!
  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!
  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!
  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!
  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!
  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!
  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!
  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!
  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!
  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!
  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!
  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!
  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!
  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!
  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!
  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!
  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!
  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!
  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!
  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!
  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!
  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!
  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!
  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!
  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!
  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!
  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!
  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!
  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!
  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!
  • ReactNative: New init setup - #34665, thanks @​ndelangen!
  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!
  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!
  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!
  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!
  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!
  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!
  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!
  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!
  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!
  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!
  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!
  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!
  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!
  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!
  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!
  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!
  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!
  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!
  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!
  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!
  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!
  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!
  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!
  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!
        ### v10.4.0-beta.0## 10.4.0-beta.0
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!

  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!

  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!

  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!

          ### v10.4.0-alpha.19## 10.4.0-alpha.19
    
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!

  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!

  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!

  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!

  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!

  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!

  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!

  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!

  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!

  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!

  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!

          ### v10.4.0-alpha.18## 10.4.0-alpha.18
    
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!

  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!

  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!

  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!

  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!

  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!

  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!

  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!

  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.17## 10.4.0-alpha.17
    
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!

  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!

  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!

  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!

  • ReactNative: New init setup - #34665, thanks @​ndelangen!

  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!

  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!

          ### v10.4.0-alpha.16## 10.4.0-alpha.16
    
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!

  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!

  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!

  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!

          ### v10.4.0-alpha.15## 10.4.0-alpha.15
    
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!

          ### v10.4.0-alpha.14## 10.4.0-alpha.14
    
  • CLI: Fix agentic check - #34678, thanks @​yannbf!

          ### v10.4.0-alpha.13## 10.4.0-alpha.13
    
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!

  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!

          ### v10.4.0-alpha.12## 10.4.0-alpha.12
    
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!

          ### v10.4.0-alpha.11## 10.4.0-alpha.11
    
  • CLI: Change mock event detection - #34586, thanks @​yannbf!

  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!

  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.3.6## 10.3.6
    
  • ESLint: Update deprecated @​storybook/test reference to storybook/test - #34430, thanks @​venkat22022202!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.4.0-alpha.10## 10.4.0-alpha.10
    
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!

  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.9## 10.4.0-alpha.9
    
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!

  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!

  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!

  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!

  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!

  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!

  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!

  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!

  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!

          ### v10.4.0-alpha.8## 10.4.0-alpha.8
    
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!

  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!

  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!

  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!

  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!

  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!

          ### v10.3.5## 10.3.5
    
  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

[!NOTE]
Version >=0.5.0 of @&ZeroWidthSpace;storybook/addon-mcp enables component manifests again. If you're upgrading Storybook from version >= 10.3.0 to >= 10.3.5 and are using the MCP addon, you should also upgrade @&ZeroWidthSpace;storybook/addon-mcp to keep the docs toolset in the MCP server.

        ### v10.4.0-alpha.7## 10.4.0-alpha.7
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!

  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!

  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!

  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!

  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!

          ### v10.3.4## 10.3.4
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

          ### v10.4.0-alpha.6## 10.4.0-alpha.6
    
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!

  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!

  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!

  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!

  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!

  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!

  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!

          ### v10.4.0-alpha.5## 10.4.0-alpha.5
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!

  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!

  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!

          ### v10.4.0-alpha.4## 10.4.0-alpha.4
    
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!

  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!

  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!

  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!

  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!

  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!

          ### v10.4.0-alpha.3## 10.4.0-alpha.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.3.3## 10.3.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

          ### v10.3.2## 10.3.2
    
  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.4.0-alpha.2## 10.4.0-alpha.2
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!

  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!

          ### v10.4.0-alpha.1## 10.4.0-alpha.1
    
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!

          ### v10.3.1## 10.3.1
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

          ### v10.4.0-alpha.0## 10.4.0-alpha.0
    
    
    
    
          ### v10.3.0## 10.3.0
    

> Improved developer experience, AI-assisting tools, and broader ecosystem support

Storybook 10.3 contains hundreds of fixes and improvements including:

  • 🤖 Storybook MCP: Agentic component dev, docs, and test (Preview release for React)
  • ⚡ Vite 8 support
  • ▲ Next.js 16.2 support
  • 📝 ESLint 10 support
  • 〰️ Addon Pseudo-States: Tailwind v4 support
  • 🔧 Addon-Vitest: Simplified configuration - no more setup files required
  • ♿ Numerous accessibility improvements across the UI
List of all updates
  • A11y: Add ScrollArea prop focusable for when it has static children - #33876, thanks @​Sidnioulz!
  • A11y: Ensure popover dialogs have an ARIA label - #33500, thanks @​gayanMatch!
  • A11y: Make resize handles for addon panel and sidebar accessible #33980
  • A11y: Underline MDX links for WCAG SC 1.4.1 compliance - #33139, thanks @​NikhilChowdhury27!
  • Actions: Add expandLevel parameter to configure tree depth - #33977, thanks @​mixelburg!
  • Actions: Fix HandlerFunction type to support async callback props - #33864, thanks @​mixelburg!
  • Addon-Docs: Add React as optimizeDeps entry - #34176, thanks @​valentinpalkovic!
  • Addon-Docs: Add support for `sourceState: 'none'` to canvas block parameters - #33627, thanks @​quisido!
  • Addon-docs: Restore `docs.components` overrides for doc blocks #34111
  • Addon-Vitest: Add channel API to programmatically trigger test runs - #33206, thanks @​JReinhold!
  • Addon-Vitest: Handle additional vitest config export patterns in postinstall - #34106, thanks @​copilot-swe-agent!
  • Addon-Vitest: Make Playwright `--with-deps` platform-aware to avoid `sudo` prompt on Linux #34121
  • Addon-Vitest: Refactor Vitest setup to eliminate the need for a dedicated setup file - #34025, thanks @​valentinpalkovic!
  • Addon-Vitest: Support Vitest canaries - #33833, thanks @​valentinpalkovic!
  • Angular: Add moduleResolution: bundler to tsconfig - #34085, thanks @​valentinpalkovic!
  • Angular: only load webpack dependencies on demand - #34043, thanks @​sod!
  • Angular: Storybook fails with unknown option silent - #33736, thanks @​tanujbhaud!
  • Build: Update @​types/node - #34037, thanks @​valentinpalkovic!
  • Builder-Vite: Centralize Vite plugins for builder-vite and addon-vitest - #33819, thanks @​valentinpalkovic!
  • Builder-Vite: Fix cold-cache vitest failures for story paths containing glob special characters - #34044, thanks @​copilot-swe-agent!
  • Builder-Vite: Use preview annotations as entry points for optimizeDeps - #33875, thanks @​copilot-swe-agent!
  • CI: declare explicit permissions for stale and weekly cron workflows - #33902, thanks @​Rohan5commit!
  • CLI: Add vike CLI metadata - #34189, thanks @​yannbf!
  • CLI: Avoid hanging of postinstall during init - #34175, thanks @​valentinpalkovic!
  • CLI: Fix onboarding not opening - #33609, thanks @​ndelangen!
  • CLI: Show multiple favicons warning as debug message - #34069, thanks @​remino!
  • Cli: Use npm for registry URL in PNPMProxy to avoid workspace errors - #33571, thanks @​ia319!
  • Controls: Allow story argTypes to override control: false from meta - #33729, thanks @​jonathan-fulton!
  • Controls: Fix Object contrast issue and tidy up code - #33923, thanks @​Sidnioulz!
  • Core: Ensure telemetry is never triggered on initial load of checklist data - #33918, thanks @​ghengeveld!
  • Core: Fix event source URL based on refId when multiple iframes share the same origin #34105
  • Core: Fix false-positive CJS warning when 'exports' appears in strings or comments - #33572, thanks @​reeseo3o!
  • Core: Fix handling complex viewport sizes #33615
  • Core: Fix iframe reference for composed Storybook on a subpath #34100
  • Core: Fix typos: occured -> occurred, recieves -> receives - #33727, thanks @​jonathan-fulton!
  • Core: Handle BROWSER=none correctly and improve error messages - #33730, thanks @​jonathan-fulton!
  • Core: Ignore empty files when indexing - #33782, thanks @​JReinhold!
  • Core: Register CORS middleware before index.json route - #33728, thanks @​jonathan-fulton!
  • Core: Revert Pull Request #33420 from Maelryn/fix/copy-button-overlap - #33877, thanks @​Sidnioulz!
  • Core: Zoom tool refinements - Hide reset button when value is initial - #33635, thanks @​superLipbalm!
  • Docs: Edit JSON button is now accessible at 320x256 viewport (WCAG 2.1 Reflow test) - #33707, thanks @​TheSeydiCharyyev!
  • Docs: Make CSS ordering in DocsContainer more predictable #34015
  • ESLint-plugin: Disallow extra properties in eslint plugin rule options - #32056, thanks @​andreww2012!
  • ESLint: bail out config setup if eslint-plugin-storybook is already imported - #34089, thanks @​copilot-swe-agent!
  • HMR: Fix race conditions causing stale play functions to fire on re-rendered stories - #33930, thanks @​copilot-swe-agent!
  • Maintenance: Revert pull request #33930 HMR events - #34190, thanks @​yannbf!
  • Maintenance: Use std-env for AI agent detection in telemetry #34114
  • Manifest: Add docs entries to debugger - #33607, thanks @​JReinhold!
  • Manifest: Rename `experimentalComponentsManifest` → `componentsManifest`, default to `true` #33974
  • Manifests: Fix Attached MDX causing wrong component entries #34101
  • Next.js-Vite: Fix failing postcss mutation - #33879, thanks @​valentinpalkovic!
  • Next.js: Move image configuration from FrameworkOptions to parameters #32639, thanks @​y-hsgw!
  • Preact: Support inferring props from component types - #33828, thanks @​JoviDeCroock!
  • React Native Web: Fix inconsistent example stories - #33891, thanks @​danielalanbates!
  • React: Add react-docgen-typescript to component manifest - #33818, thanks @​kasperpeulen!
  • Revert "Toolbar: Remove extra toolbar divider when zoom controls not shown" - #34099, thanks @​valentinpalkovic!
  • Test: Fix clearing mocks in Vitest #34078
  • Test: Update @​testing-library/jest-dom - #33928, thanks @​valentinpalkovic!
  • Theming: Export interface declaration for `ThemesGlobals` - #33343, thanks @​icopp!
  • Toolbar: Remove extra toolbar divider when zoom controls not shown - #33731, thanks @​jonathan-fulton!
  • UI: Allow direct kb/mouse actions on zoom tool button - #33496, thanks @​Sidnioulz!
  • UI: Avoid large animation for reduced motion users - #33530, thanks @​Sidnioulz!
  • UI: Ensure Link without href is keyboard-reachable - #34163, thanks @​Sidnioulz!
  • UI: Fix `z-index` problem with `popover`s and `modal`s nesting - #33757, thanks @​ndelangen!
  • UI: Fix code/copy buttons overlap with content - #33889, thanks @​Sidnioulz!
  • UI: Fix Copy button overlapping code in portrait mode - #33420, thanks @​Maelryn!
  • UI: Fix modal text selection - #33967, thanks @​Sidnioulz!
  • UI: Fix tab navigation after closing addon panel - #33971, thanks @​copilot-swe-agent!
  • UI: Handle kb nav edge cases when preview and panel are hidden - #33588, thanks @​Sidnioulz!
  • UI: Hide addon panel Drag on pages without a panel - #34162, thanks @​Sidnioulz!
  • UI: Hide manifest tag for now - #34165, thanks @​Sidnioulz!
  • UI: Make disabled Buttons keyboard-focusable - #34166, thanks @​Sidnioulz!
  • UI: Make TagsFilter state persistent #33374
  • UI: Use correct selector for addon panel focus check - #34164, thanks @​Sidnioulz!
  • UI: Zoom faster when pressing shift - #34185, thanks @​Sidnioulz!
  • Viewport: Skip viewport validation before parameters load - #33794, thanks @​ia319!
  • Vite: Add mock entries to optimizeDeps.entries - #34167, thanks @​valentinpalkovic!
  • Vue3-Vite: Allow paths in docgen tsconfig option #32310, thanks @​Thomaash!
Commit history:
  • 7c9e28 Bump version from "10.4.0" to "10.5.0-alpha.0" [skip ci]
  • 0c1ae9 Release: Preminor alpha 10.5.0-alpha.0

    Release: Preminor alpha 10.5.0-alpha.0

  • fba414 Write changelog for 10.5.0-alpha.0 [skip ci]
  • f8c16d Bump version from "10.4.0-beta.0" to "10.4.0" [skip ci]
  • a2220d Merge pull request #34796 from storybookjs/version-non-patch-from-10.4.0-beta.0

    Release: Minor 10.4.0

  • 3c907e add sharing to changelog
  • ddd0f9 improve changelog
  • 891d64 add initial minor changelog
  • 9e7772 Write changelog for 10.4.0 [skip ci]
  • e02da0 Bump version from "10.4.0-alpha.19" to "10.4.0-beta.0" [skip ci]
  • 7b2de0 Merge pull request #34789 from storybookjs/version-non-patch-from-10.4.0-alpha.19

    Release: Prerelease beta 10.4.0-beta.0

  • 3b07e6 Write changelog for 10.4.0-beta.0 [skip ci]
  • 589f29 Merge pull request #34788 from storybookjs/next-release

    Build: Merge next-release into next

  • 6fe595 Merge branch 'next' into next-release
  • f9810c Merge pull request #34769 from storybookjs/jeppe/handle-minimum-release-age

    CLI: Handle minimumReleaseAge conflicts across package managers

  • db9d52 format
  • bdc688 fix documentation string
  • eed7d2 simplify error handling
  • d69581 Merge pull request #34783 from storybookjs/jeppe/fix-vite8-svelte

    Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner

  • 27d818 Merge pull request #34786 from storybookjs/valentin/change-detection-docs-in-preview

    Docs: Add in preview notice for change detection

  • f1b35f Docs: Add in preview notice for change detection
  • a5d674 Merge pull request #34782 from storybookjs/yann/fix-payload-names

    Maintenance: Fix self healing payload

  • fd0b83 Fix Vite 8 + Vitest + Svelte breaking rolldown deps scanner
  • 429fb3 Bump version from "10.4.0-alpha.18" to "10.4.0-alpha.19" [skip ci]
  • 1a50c0 Merge pull request #34773 from storybookjs/version-non-patch-from-10.4.0-alpha.18

    Release: Prerelease alpha 10.4.0-alpha.19

  • 8eb16b unknown errors during precheck should not halt the process completely.
  • d1d63f fix type
  • 79a866 format
  • 3ebdd0 undo the "run" prefix on ghost stories and self healing payload
  • abf3c2 detect when minimumReleaseAgeExclude is already correctly configured, add VTA to list of excludes

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump @​storybook/builder-vite from 9.1.3 to 10.4.0

Changelog:
Sourced from releases.
        ### v10.5.0-alpha.0## 10.5.0-alpha.0




        ### v10.4.0## 10.4.0

AI-assisted setup, change-aware review, and stronger framework support

Storybook 10.4 contains hundreds of fixes and improvements including:

  • 🤖 Agentic Setup: New CLI workflow for AI-assisted Storybook setup and onboarding
  • 🔍 Change review: Sidebar filtering to highlight new, modified, and related stories based on git changes
  • 🧭 Sidebar review tools: Status filtering, URL-persisted filters, and clearer review signals in the sidebar
  • ⚛️ TanStack React: New `@​storybook/tanstack-react` framework with routing and server function support
  • 🧩 React MCP: Faster, more accurate component docgen powered by the TypeScript Language Server
  • 📱 React Native: Zero config RN project initialization
  • 🤝 Sharing: Easily publish and share your local Storybook with teammates, powered by Chromatic
List of all updates
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!
  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!
  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!
  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!
  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!
  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!
  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!
  • CLI: Change mock event detection - #34586, thanks @​yannbf!
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!
  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!
  • CLI: Fix agentic check - #34678, thanks @​yannbf!
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!
  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!
  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!
  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!
  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!
  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!
  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!
  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!
  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!
  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!
  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!
  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!
  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!
  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!
  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!
  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!
  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!
  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!
  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!
  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!
  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!
  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!
  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!
  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!
  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!
  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!
  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!
  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!
  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!
  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!
  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!
  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!
  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!
  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!
  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!
  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!
  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!
  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!
  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!
  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!
  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!
  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!
  • ReactNative: New init setup - #34665, thanks @​ndelangen!
  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!
  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!
  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!
  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!
  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!
  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!
  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!
  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!
  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!
  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!
  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!
  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!
  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!
  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!
  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!
  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!
  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!
  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!
  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!
  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!
  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!
  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!
  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!
  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!
        ### v10.4.0-beta.0## 10.4.0-beta.0
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @​JReinhold!

  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @​JReinhold!

  • Maintenance: Fix self healing payload - #34782, thanks @​yannbf!

  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @​JReinhold!

          ### v10.4.0-alpha.19## 10.4.0-alpha.19
    
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @​Sidnioulz!

  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @​Sidnioulz!

  • CLI: Improve package incompatibility detection and warning - #34559, thanks @​copilot-swe-agent!

  • CLI: Remove extensive prompt option - #34740, thanks @​yannbf!

  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @​huang-julien!

  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @​JReinhold!

  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @​valentinpalkovic!

  • ReactNative: AppRegistry component name in template - #34742, thanks @​ndelangen!

  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @​valentinpalkovic!

  • Sidebar: Show same status icon at story and group level - #34702, thanks @​valentinpalkovic!

  • Tanstack: Treeshake top-level unused functions - #34760, thanks @​huang-julien!

          ### v10.4.0-alpha.18## 10.4.0-alpha.18
    
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @​Sidnioulz!

  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @​huang-julien!

  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @​valentinpalkovic!

  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @​valentinpalkovic!

  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @​TheSeydiCharyyev!

  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @​valentinpalkovic!

  • Tanstack: Optimize tanstack react-store - #34731, thanks @​huang-julien!

  • Telemetry: Refactor init tracking - #34629, thanks @​Programer1804!

  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.17## 10.4.0-alpha.17
    
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @​Sidnioulz!

  • MDX: Replace `@​storybook/docs-mdx` with inline implementation - #34611, thanks @​copilot-swe-agent!

  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @​yannbf!

  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @​ndelangen!

  • ReactNative: New init setup - #34665, thanks @​ndelangen!

  • Tanstack: Add `@​storybook/tanstack-react` package - #34403, thanks @​huang-julien!

  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @​yannbf!

          ### v10.4.0-alpha.16## 10.4.0-alpha.16
    
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @​ndelangen!

  • CLI: Improve self-healing scoring observability - #34699, thanks @​yannbf!

  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @​yannbf!

  • ReactNative: Add true entrypoint generation - #34663, thanks @​ndelangen!

          ### v10.4.0-alpha.15## 10.4.0-alpha.15
    
  • Vitest: Fix agent detection breaking runs - #34681, thanks @​JReinhold!

          ### v10.4.0-alpha.14## 10.4.0-alpha.14
    
  • CLI: Fix agentic check - #34678, thanks @​yannbf!

          ### v10.4.0-alpha.13## 10.4.0-alpha.13
    
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @​JReinhold!

  • Telemetry: Fix delayed init events - #34670, thanks @​JReinhold!

          ### v10.4.0-alpha.12## 10.4.0-alpha.12
    
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @​yannbf!

          ### v10.4.0-alpha.11## 10.4.0-alpha.11
    
  • CLI: Change mock event detection - #34586, thanks @​yannbf!

  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @​ghengeveld!

  • Core: Show "new" status on newly added individual stories - #34504, thanks @​ghengeveld!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @​valentinpalkovic!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.3.6## 10.3.6
    
  • ESLint: Update deprecated @​storybook/test reference to storybook/test - #34430, thanks @​venkat22022202!

  • React: Add optional React type peers to packages that publish React-based declarations - #34641, thanks @​copilot-swe-agent!

  • UI: Fix global background + color styles affecting stories - #34071, thanks @​Axadali!

          ### v10.4.0-alpha.10## 10.4.0-alpha.10
    
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @​valentinpalkovic!

  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @​valentinpalkovic!

          ### v10.4.0-alpha.9## 10.4.0-alpha.9
    
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @​anchmelev!

  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @​anchmelev!

  • CLI: Streamline Node.js version detection code - #34440, thanks @​Sidnioulz!

  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @​ghengeveld!

  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @​ghengeveld!

  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @​huang-julien!

  • Nextjs: Handle node builtin webpack imports - #34494, thanks @​JReinhold!

  • React: Add subcomponents to component manifests - #34428, thanks @​kasperpeulen!

  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @​whdjh!

          ### v10.4.0-alpha.8## 10.4.0-alpha.8
    
  • A11y: Add aria-live announcements via @​react-aria/live-announcer - #33970, thanks @​copilot-swe-agent!

  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @​Sidnioulz!

  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

  • Core: Implement Git change detection - #34420, thanks @​ghengeveld!

  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @​Sidnioulz!

  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @​valentinpalkovic!

  • UI: Improve interactions panel accessibility - #34110, thanks @​anchmelev!

          ### v10.3.5## 10.3.5
    
  • Core: Disable component manifest by default - #34408, thanks @​yannbf!

[!NOTE]
Version >=0.5.0 of @&ZeroWidthSpace;storybook/addon-mcp enables component manifests again. If you're upgrading Storybook from version >= 10.3.0 to >= 10.3.5 and are using the MCP addon, you should also upgrade @&ZeroWidthSpace;storybook/addon-mcp to keep the docs toolset in the MCP server.

        ### v10.4.0-alpha.7## 10.4.0-alpha.7
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @​Sidnioulz!

  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @​ghengeveld!

  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @​mixelburg!

  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @​valentinpalkovic!

  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @​Sidnioulz!

          ### v10.3.4## 10.3.4
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

          ### v10.4.0-alpha.6## 10.4.0-alpha.6
    
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @​ghengeveld!

  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @​whdjh!

  • CLI: Prompt for init crash reports - #34316, thanks @​JReinhold!

  • CSF4: Fix duplicate preview loading issue in Vitest - #34361, thanks @​valentinpalkovic!

  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @​majiayu000!

  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @​alex-js-ltd!

  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @​mixelburg!

  • Onboarding: Fix checklist MDX instructions - #33193, thanks @​kylegach!

  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @​viditkbhatnagar!

  • React-Docgen: Try .tsx fallback when resolving .js ESM imports in docgen resolvers - #34393, thanks @​mixelburg!

  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @​Nathan54Villaume!

  • Vite: Use vite hook filter for performance improvements - #34022, thanks @​huang-julien!

          ### v10.4.0-alpha.5## 10.4.0-alpha.5
    
  • Addon-a11y: Clear status transition timer on unmount to prevent test flake - #34203, thanks @​mixelburg!

  • Builder-Vite: Use djb2 hash to prevent variable name collisions in builder-vite - #34274, thanks @​chida09!

  • CLI: Fix Next.js Vite automigration corrupting configs already using `@​storybook/nextjs-vite` - #34249, thanks @​nathanjessen!

  • Core: Add changeDetection feature flag - #34314, thanks @​valentinpalkovic!

  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @​valentinpalkovic!

  • React-Vite: Upgrade @​joshwooding/vite-plugin-react-docgen-typescript to 0.7.0 - #34335, thanks @​beeswhacks!

  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @​copilot-swe-agent!

          ### v10.4.0-alpha.4## 10.4.0-alpha.4
    
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @​6810779s!

  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @​yatishgoel!

  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @​mixelburg!

  • Core: Fix WebSocket connection for StackBlitz/WebContainers - #34281, thanks @​ghengeveld!

  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @​k35o!

  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @​kasperpeulen!

  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @​valentinpalkovic!

  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @​Sidnioulz!

          ### v10.4.0-alpha.3## 10.4.0-alpha.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @​ValentinFunk!

  • Bug: Skip re-processing already transformed config files for CSF factories - #34273, thanks @​huang-julien!

  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.3.3## 10.3.3
    
  • Addon-Vitest: Streamline vite(st) config detection across init and postinstall - #34193, thanks @​valentinpalkovic!

          ### v10.3.2## 10.3.2
    
  • CLI: Shorten CTA link messages - #34236, thanks @​shilman!

  • React Native Web: Fix vite8 support by bumping vite-plugin-rnw - #34231, thanks @​dannyhw!

          ### v10.4.0-alpha.2## 10.4.0-alpha.2
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @​mixelburg!

  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @​50bbx!

          ### v10.4.0-alpha.1## 10.4.0-alpha.1
    
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @​TheSeydiCharyyev!

          ### v10.3.1## 10.3.1
    
  • CLI: Use npm info to fetch versions in repro command - #34214, thanks @​yannbf!

  • Core: Prevent story-local viewport from persisting in URL - #34153, thanks @​ghengeveld!

          ### v10.4.0-alpha.0## 10.4.0-alpha.0
    
    
    
    
          ### v10.3.0## 10.3.0
    

> Improved developer experience, AI-assisting tools, and broader ecosystem support

Storybook 10.3 contains hundreds of fixes and improvements including:

  • 🤖 Storybook MCP: Agentic component dev, docs, and test (Preview release for React)
  • ⚡ Vite 8 support
  • ▲ Next.js 16.2 support
  • 📝 ESLint 10 support
  • 〰️ Addon Pseudo-States: Tailwind v4 support
  • 🔧 Addon-Vitest: Simplified configuration - no more setup files required
  • ♿ Numerous accessibility improvements across the UI
List of all updates
  • A11y: Add ScrollArea prop focusable for when it has static children - #33876, thanks @​Sidnioulz!
  • A11y: Ensure popover dialogs have an ARIA label - #33500, thanks @​gayanMatch!
  • A11y: Make resize handles for addon panel and sidebar accessible #33980
  • A11y: Underline MDX links for WCAG SC 1.4.1 compliance - #33139, thanks @​NikhilChowdhury27!
  • Actions: Add expandLevel parameter to configure tree depth - #33977, thanks @​mixelburg!
  • Actions: Fix HandlerFunction type to support async callback props - #33864, thanks @​mixelburg!
  • Addon-Docs: Add React as optimizeDeps entry - #34176, thanks @​valentinpalkovic!
  • Addon-Docs: Add support for `sourceState: 'none'` to canvas block parameters - #33627, thanks @​quisido!
  • Addon-docs: Restore `docs.components` overrides for doc blocks #34111
  • Addon-Vitest: Add channel API to programmatically trigger test runs - #33206, thanks @​JReinhold!
  • Addon-Vitest: Handle additional vitest config export patterns in postinstall - #34106, thanks @​copilot-swe-agent!
  • Addon-Vitest: Make Playwright `--with-deps` platform-aware to avoid `sudo` prompt on Linux #34121
  • Addon-Vitest: Refactor Vitest setup to eliminate the need for a dedicated setup file - #34025, thanks @​valentinpalkovic!
  • Addon-Vitest: Support Vitest canaries - #33833, thanks @​valentinpalkovic!
  • Angular: Add moduleResolution: bundler to tsconfig - #34085, thanks @​valentinpalkovic!
  • Angular: only load webpack dependencies on demand - #34043, thanks @​sod!
  • Angular: Storybook fails with unknown option silent - #33736, thanks @​tanujbhaud!
  • Build: Update @​types/node - #34037, thanks @​valentinpalkovic!
  • Builder-Vite: Centralize Vite plugins for builder-vite and addon-vitest - #33819, thanks @​valentinpalkovic!
  • Builder-Vite: Fix cold-cache vitest failures for story paths containing glob special characters - #34044, thanks @​copilot-swe-agent!
  • Builder-Vite: Use preview annotations as entry points for optimizeDeps - #33875, thanks @​copilot-swe-agent!
  • CI: declare explicit permissions for stale and weekly cron workflows - #33902, thanks @​Rohan5commit!
  • CLI: Add vike CLI metadata - #34189, thanks @​yannbf!
  • CLI: Avoid hanging of postinstall during init - #34175, thanks @​valentinpalkovic!
  • CLI: Fix onboarding not opening - #33609, thanks @​ndelangen!
  • CLI: Show multiple favicons warning as debug message - #34069, thanks @​remino!
  • Cli: Use npm for registry URL in PNPMProxy to avoid workspace errors - #33571, thanks @​ia319!
  • Controls: Allow story argTypes to override control: false from meta - #33729, thanks @​jonathan-fulton!
  • Controls: Fix Object contrast issue and tidy up code - #33923, thanks @​Sidnioulz!
  • Core: Ensure telemetry is never triggered on initial load of checklist data - #33918, thanks @​ghengeveld!
  • Core: Fix event source URL based on refId when multiple iframes share the same origin #34105
  • Core: Fix false-positive CJS warning when 'exports' appears in strings or comments - #33572, thanks @​reeseo3o!
  • Core: Fix handling complex viewport sizes #33615
  • Core: Fix iframe reference for composed Storybook on a subpath #34100
  • Core: Fix typos: occured -> occurred, recieves -> receives - #33727, thanks @​jonathan-fulton!
  • Core: Handle BROWSER=none correctly and improve error messages - #33730, thanks @​jonathan-fulton!
  • Core: Ignore empty files when indexing - #33782, thanks @​JReinhold!
  • Core: Register CORS middleware before index.json route - #33728, thanks @​jonathan-fulton!
  • Core: Revert Pull Request #33420 from Maelryn/fix/copy-button-overlap - #33877, thanks @​Sidnioulz!
  • Core: Zoom tool refinements - Hide reset button when value is initial - #33635, thanks @​superLipbalm!
  • Docs: Edit JSON button is now accessible at 320x256 viewport (WCAG 2.1 Reflow test) - #33707, thanks @​TheSeydiCharyyev!
  • Docs: Make CSS ordering in DocsContainer more predictable #34015
  • ESLint-plugin: Disallow extra properties in eslint plugin rule options - #32056, thanks @​andreww2012!
  • ESLint: bail out config setup if eslint-plugin-storybook is already imported - #34089, thanks @​copilot-swe-agent!
  • HMR: Fix race conditions causing stale play functions to fire on re-rendered stories - #33930, thanks @​copilot-swe-agent!
  • Maintenance: Revert pull request #33930 HMR events - #34190, thanks @​yannbf!
  • Maintenance: Use std-env for AI agent detection in telemetry #34114
  • Manifest: Add docs entries to debugger - #33607, thanks @​JReinhold!
  • Manifest: Rename `experimentalComponentsManifest` → `componentsManifest`, default to `true` #33974
  • Manifests: Fix Attached MDX causing wrong component entries #34101
  • Next.js-Vite: Fix failing postcss mutation - #33879, thanks @​valentinpalkovic!
  • Next.js: Move image configuration from FrameworkOptions to parameters #32639, thanks @​y-hsgw!
  • Preact: Support inferring props from component types - #33828, thanks @​JoviDeCroock!
  • React Native Web: Fix inconsistent example stories - #33891, thanks @​danielalanbates!
  • React: Add react-docgen-typescript to component manifest - #33818, thanks @​kasperpeulen!
  • Revert "Toolbar: Remove extra toolbar divider when zoom controls not shown" - #34099, thanks @​valentinpalkovic!
  • Test: Fix clearing mocks in Vitest #34078
  • Test: Update @​testing-library/jest-dom - #33928, thanks @​valentinpalkovic!
  • Theming: Export interface declaration for `ThemesGlobals` - #33343, thanks @​icopp!
  • Toolbar: Remove extra toolbar divider when zoom controls not shown - #33731, thanks @​jonathan-fulton!
  • UI: Allow direct kb/mouse actions on zoom tool button - #33496, thanks @​Sidnioulz!
  • UI: Avoid large animation for reduced motion users - #33530, thanks @​Sidnioulz!
  • UI: Ensure Link without href is keyboard-reachable - #34163, thanks @​Sidnioulz!
  • UI: Fix `z-index` problem with `popover`s and `modal`s nesting - #33757, thanks @​ndelangen!
  • UI: Fix code/copy buttons overlap with content - #33889, thanks @​Sidnioulz!
  • UI: Fix Copy button overlapping code in portrait mode - #33420, thanks @​Maelryn!
  • UI: Fix modal text selection - #33967, thanks @​Sidnioulz!
  • UI: Fix tab navigation after closing addon panel - #33971, thanks @​copilot-swe-agent!
  • UI: Handle kb nav edge cases when preview and panel are hidden - #33588, thanks @​Sidnioulz!
  • UI: Hide addon panel Drag on pages without a panel - #34162, thanks @​Sidnioulz!
  • UI: Hide manifest tag for now - #34165, thanks @​Sidnioulz!
  • UI: Make disabled Buttons keyboard-focusable - #34166, thanks @​Sidnioulz!
  • UI: Make TagsFilter state persistent #33374
  • UI: Use correct selector for addon panel focus check - #34164, thanks @​Sidnioulz!
  • UI: Zoom faster when pressing shift - #34185, thanks @​Sidnioulz!
  • Viewport: Skip viewport validation before parameters load - #33794, thanks @​ia319!
  • Vite: Add mock entries to optimizeDeps.entries - #34167, thanks @​valentinpalkovic!
  • Vue3-Vite: Allow paths in docgen tsconfig option #32310, thanks @​Thomaash!
Commit history:
  • 7c9e28 Bump version from "10.4.0" to "10.5.0-alpha.0" [skip ci]
  • 0c1ae9 Release: Preminor alpha 10.5.0-alpha.0

    Release: Preminor alpha 10.5.0-alpha.0

  • fba414 Write changelog for 10.5.0-alpha.0 [skip ci]
  • f8c16d Bump version from "10.4.0-beta.0" to "10.4.0" [skip ci]
  • a2220d Merge pull request #34796 from storybookjs/version-non-patch-from-10.4.0-beta.0

    Release: Minor 10.4.0

  • 3c907e add sharing to changelog
  • ddd0f9 improve changelog
  • 891d64 add initial minor changelog
  • 9e7772 Write changelog for 10.4.0 [skip ci]
  • e02da0 Bump version from "10.4.0-alpha.19" to "10.4.0-beta.0" [skip ci]
  • 7b2de0 Merge pull request #34789 from storybookjs/version-non-patch-from-10.4.0-alpha.19

    Release: Prerelease beta 10.4.0-beta.0

  • 3b07e6 Write changelog for 10.4.0-beta.0 [skip ci]
  • 589f29 Merge pull request #34788 from storybookjs/next-release

    Build: Merge next-release into next

  • 6fe595 Merge branch 'next' into next-release
  • f9810c Merge pull request #34769 from storybookjs/jeppe/handle-minimum-release-age

    CLI: Handle minimumReleaseAge conflicts across package managers

  • db9d52 format
  • bdc688 fix documentation string
  • eed7d2 simplify error handling
  • d69581 Merge pull request #34783 from storybookjs/jeppe/fix-vite8-svelte

    Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner

  • 27d818 Merge pull request #34786 from storybookjs/valentin/change-detection-docs-in-preview

    Docs: Add in preview notice for change detection

  • f1b35f Docs: Add in preview notice for change detection
  • a5d674 Merge pull request #34782 from storybookjs/yann/fix-payload-names

    Maintenance: Fix self healing payload

  • fd0b83 Fix Vite 8 + Vitest + Svelte breaking rolldown deps scanner
  • 429fb3 Bump version from "10.4.0-alpha.18" to "10.4.0-alpha.19" [skip ci]
  • 1a50c0 Merge pull request #34773 from storybookjs/version-non-patch-from-10.4.0-alpha.18

    Release: Prerelease alpha 10.4.0-alpha.19

  • 8eb16b unknown errors during precheck should not halt the process completely.
  • d1d63f fix type
  • 79a866 format
  • 3ebdd0 undo the "run" prefix on ghost stories and self healing payload
  • abf3c2 detect when minimumReleaseAgeExclude is already correctly configured, add VTA to list of excludes

@michijs

michijs Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

Bump @​michijs/storybook-utils from 8.4.7 to 8.4.8

Changelog:
Sourced from releases.
        ### 8.4.8## What's Changed

New Contributors

Full Changelog: https://github.com/michijs/storybook-utils/compare/v8.4.7...8.4.8

        ### v8.4.8-beta.8Automatic release


        ### v8.4.8-beta.7Automatic release


        ### v8.4.8-beta.6Automatic release


        ### v8.4.8-beta.5Automatic release


        ### v8.4.8-beta.4Automatic release


        ### v8.4.8-beta.3Automatic release


        ### v8.4.8-beta.2Automatic release


        ### v8.4.8-beta.1Automatic release


        ### v8.4.8-beta.0Automatic release


        ### v8.4.7Bump dependencies
Commit history:

@michijs michijs Bot closed this May 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants