Sanity Studio v6.13.0
This release includes various improvements and bug fixes.
For the complete changelog with all details, please visit:
www.sanity.io/changelog/studio-Ni4xMi4w
Install or upgrade Sanity Studio
To upgrade to this version, run:
npm install sanity@latestTo initiate a new Sanity Studio project or learn more about upgrading, please refer to our comprehensive guide on Installing and Upgrading Sanity Studio.
📓 Full changelog
| Author | Message | Commit |
|---|---|---|
| @juice49 | chore: Revert "chore(core): add condition resolver for variants (#14500) (#14654) | 46c80dc |
| squiggler-app[bot] | chore(deps): update dependency @chromatic-com/vitest to ^1.0.1 (#14536) | 8ccfb7f |
| @bjoerge | fix(radar): make drift detection noise-aware (#14648) | dfa6bb2 |
| @stipsan | fix(util): use get-it/any-signal so cancellation works on Safari 17 (#14641) | c7feba7 |
| @pedrobonamin | fix(core): keep draft chip avatar orange when no draft exists (#14598) | c337ea3 |
| @bjoerge | chore(radar): remove the one-off document id migration (#14640) | d949dab |
| @bjoerge | chore(radar): remove dots from doc ids, add skills (#14636) | c38b811 |
| squiggler-app[bot] | chore(deps): dedupe pnpm-lock.yaml (#14635) | 3db6359 |
| squiggler-app[bot] | chore(deps): update dependency @sanity/ui to ^4.1.1 (#14638) | 812a6cb |
| squiggler-app[bot] | chore(deps): update dependency @sanity/vanilla-extract-vite-plugin to ^0.2.18 (#14633) | f9c4b91 |
| @jordanl17 | fix(form): constrain pte annotation reference picker width and results height (#14362) | 9f65aa6 |
| squiggler-app[bot] | chore(deps): update dependency @sanity/ui to ^4.1.0 (#14634) | b25d8ba |
| squiggler-app[bot] | chore(deps): dedupe pnpm-lock.yaml (#14525) | e9705c2 |
| @juice49 | fix(sanity): false-positive appearance of ReferenceChangedBanner (#14518)
| cf59363 |
| @stipsan | fix(test-studio): count styled ui v5 components as both systems (#14629) | f4cf57a |
| @stipsan | chore(test): stop measuring vitest import durations (#14596) | 8bdfc52 |
| @stipsan | fix(test-studio): shorten style panel labels and use green and red ui colors (#14615) | 11d2b0a |
| @pedrobonamin | feat(variants): gate definition delete on permission and explain server refusals (#14528) | 5aa89fa |
| squiggler-app[bot] | fix(deps): update playwright monorepo to v1.63.0 (#14611) | 6f941c3 |
| @stipsan | chore(agents): add sanity-ui-migration-progress skill (#14542) | c0d99c0 |
| squiggler-app[bot] | fix(deps): update dev-non-major (#14583) | e36a279 |
| @pedrobonamin | chore(core): add condition resolver for variants (#14500) | d88516e |
| squiggler-app[bot] | fix(deps): update portabletext (#14573) | 6830b9d |
| @bjoerge | chore(bench): settle mode and studio customization scenarios (#14438) | 1b5e786 |
| @stipsan | feat(diagnostics): report styled components css size (#14591) | 9eaa196 |
| @stipsan | feat(test-studio): split style migration metrics (#14590) | 068f07f |
| @mikael-karlsson-weapp | feat(structure): keep panes when creating from a nested pane (#14580) | 3f7137a |
| @juice49 | refactor(sanity): move target scope selector to reusable React hook (#14578) | d87b459 |
| @stipsan | feat(core): report styled-components sheets and auto-updates in studio diagnostics (#14562) | 4d79e33 |
| @stipsan | test(storybook): drop browser-test story re-exports and inline the shared harnesses (#14571) | b29dbc7 |
| @bjoerge | refactor(bench): build historical studios from packed tarballs (#14513) | 58ec8a6 |
| @stipsan | fix(storybook): align storybook core to 10.6 with addon-vitest (#14577) | 1da9535 |
| squiggler-app[bot] | fix(deps): update dev-non-major (#14554) | 5569634 |
| squiggler-app[bot] | chore(deps): update dependency oxlint to ^1.81.0 (#14535) | 37aaf28 |
| squiggler-app[bot] | fix(deps): update dependency @sanity/client to ^8.5.0 (#14541) | 0df8eb0 |
| @laurenashpole | chore: migrate flex in misc structure directories (#14506) | 3d34bed |
| squiggler-app[bot] | chore(tests): generate dts tests 🤖 ✨ (#14569) | 66f8dae |
| @stipsan | chore(test-studio): make style outline panel opt-in (#14568) | 6f66fcc |
| @stipsan | feat(test-studio): add style outline debug panel (#14563) | 926de3c |
| @stipsan | fix(e2e): capture the studio request error dialog on failed attempts (#14558) | 9c01a9d |
| squiggler-app[bot] | fix(deps): update sanity-sdk to ^3.1.0 (#14564) | 0be9f4d |
| @rexxars | ci(renovate): group sdk dependencies (#14555) | d47c6a4 |
| @stipsan | fix(e2e): write flake report outputs relative to the invoking directory (#14561) | e314e71 |
| @stipsan | test(storybook): add ui5 flex sentinels for form input chrome (#14551) | 5eb54b6 |
| @stipsan | test(e2e): capture studio diagnostics on failed attempts and report flake causes (#14453) | 28ff09f |
| @laurenashpole | chore: migrate flex in core/form/inputs (#14364) | 52467e2 |
| @laurenashpole | chore: ui migrations in core/comments (#14459) | 37ed133 |
| @pedrobonamin | test(e2e): harden reference publish gate and search results waits (#14529) | 5670635 |
| squiggler-app[bot] | chore(deps): update dependency oxfmt to ^0.66.0 (#14534) | f441e30 |
| squiggler-app[bot] | chore(deps): update dependency knip to ^6.34.0 (#14533) | 921ad99 |
| @stipsan | fix(deps): pin rolldown under vite to 1.2.5 so bundled dev mode loads again (#14547) | 2bb7574 |
| squiggler-app[bot] | fix(deps): update dev-non-major (#14532) | 88b9f1c |
| squiggler-app[bot] | chore(deps): update dependency @testing-library/user-event to ^14.6.7 (#14530) | a12c5a4 |
| @stipsan | perf(sanity): fix idle and typing re-renders found via react devtools profiling (#14495) | a0e2c6b |
| @stipsan | feat(typegen): register query result types on a global SanityQueries interface (#14537) | b042601 |
| cursor[bot] | test(storybook): add ui5 sentinels for comments-v2 dialogs and timeline (#14544) | 39b2ff4 |
| cursor[bot] | test(storybook): add ui5 box and flex sentinels for previews and banners (#14315) | 6ecdfb1 |
| cursor[bot] | test(storybook): add ui5 box sentinels for canvas and schedules (#14215) | 2a5f5af |
| squiggler-app[bot] | chore(deps): update dependency @types/node to ^24.13.3 (#14531) | 1837514 |
| cursor[bot] | test(storybook): add ui5 sentinels for inspector search and detail (#14511) | 18ea7e1 |
| cursor[bot] | test(storybook): add ui5 sentinels for navbar auth and trial (#14484) | 13f5380 |
| cursor[bot] | test(storybook): add ui5 sentinels for alerts screens and request errors (#14448) | a807e74 |
| cursor[bot] | test(storybook): add ui5 sentinels for upsell errors and empty states (#14433) | 9a9d4de |
| cursor[bot] | test(storybook): add ui5 sentinels for cors schedules files and diffs (#14377) | 1d25898 |
| cursor[bot] | test(storybook): add ui5 box sentinels for studio screens and search (#14349) | 8a4bfdf |
| cursor[bot] | test(storybook): add ui5 box sentinels for field diffs and releases (#14062) | cd17b00 |
| cursor[bot] | test(storybook): add ui5 box sentinels for structure and tasks (#14056) | 977fb58 |
| @stipsan | feat(storybook): add visual coverage checker and skill (#14538) | 4286a96 |
| @pedrobonamin | test(e2e): decouple array file drop test from asset upload latency (#14517) | 1793ee5 |
| squiggler-app[bot] | fix(deps): update portabletext (#14526) | 8c00bc0 |
| @pedrobonamin | chore(comments-v2): migrate layout and text primitives to ui5 (#14527) | 424de38 |
| @rexxars | fix(deps): replace debug with obug (#14521)
| 9712c5f |
| squiggler-app[bot] | chore(deps): update dependency @sanity/visual-editing-csm to ^3.0.18 (#14510) | b452411 |
| squiggler-app[bot] | chore(deps): update dependency react-rx to ^6.0.1 (#14522) | 8919822 |
| squiggler-app[bot] | chore(deps): update pnpm to v11.25.0 (#14499) | 07eacd8 |
| @pedrobonamin | chore(core): events store extract functions for tests (#14330) | e5cc92e |
| @pedrobonamin | fix(core): enforce uniqueness validation in variant definition dialogs (#14515) | 505dba7 |
| @jonahsnider | feat(validation): add cancellation support (#14307) | b528986 |
| @jonahsnider | feat(validation): add capability-aware results (#14306) | 7de17c2 |
| @stipsan | perf(core): consolidate equality checks on dequal/lite and domain comparators (#14501) | fccc674 |
| @laurenashpole | refactor: migrate flex in structure/panes (#14505) | 9620989 |
| @rubioz | feat(access-ui): surface SAML enforcement before the request form (#14357) | 7d6d93b |
| @pedrobonamin | chore(core): adds support for live edit variants (#14394) | d888918 |
| squiggler-app[bot] | chore(deps): update dependency zod to ^4.5.4 (#14498) | dfe48e2 |
| @pedrobonamin | ci(e2e): add agent-friendly failure report (#14217) | 404951e |
| @hermanwikner | feat(comments): add opt-in comments API plugin (#14451) | 22811af |
| squiggler-app[bot] | chore(deps): update dependency es-toolkit to ^1.52.0 (#14497) | 849c54b |
| squiggler-app[bot] | chore(deps): update chromaui/action action to v18.7.2 (#14502) | 4530455 |
| @pedrobonamin | chore(core): add variants support to CopyDocumentActions (#14421) | 2c03ff5 |
| @pedrobonamin | chore(core): adds siblings to useTargetDocumentState (#14393) | c968ee4 |