releases.shpreview

v5.22.0

Sanity Studio v5.22.0

This release includes various improvements and bug fixes.

For the complete changelog with all details, please visit: www.sanity.io/changelog/studio-NS4yMS4w

Install or upgrade Sanity Studio

To upgrade to this version, run:

npm install sanity@latest

To 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

AuthorMessageCommit
@annezfeat(telemetry): add Studio Auth Ready + Studio Ready timing events (#12707)f3ba53867293b091770f42487b6774721d0fc589
@RitaDiasfix: positioning of reference input lists in documents (and modals / dialogs / popovers) (#12721)14f7b82b7c374013f6342867a52b9345b6ae856c
squiggler-app[bot]fix(deps): update dependency @sanity/cli to ^6.4.0 (#12727)b7bd438ababd6ef8936705bddc42b7441375894f
@skogsmaskinfeat(asset-sources): add persistence key for Media Library plugin (#12670)311ac2d6152be390a424c88860c9f9cb6647b9e3
@juice49chore(test-studio): add slug.current ordering (#12722)2fdd96fdc42b9cc1f93679f89c6f3cea249ffbda
@juice49fix(sanity): handle groq2024 searches that sort on child paths and complex GROQ expressions (#12722)755a6a5382b0d45009ae844b0a7427bbab251f8c
@EoinFalconerfix(form): support programmatic focus with inline changes enabled (#12673)cf9ce7dca68b7fbaa618e2397543a4c622f69a33
@jordanl17chore: hiding types from reference docs (#12705)58a48692d19dbfd0dfcfdb9c0adce3483a491168
@EoinFalconerfix(e2e): stabilize validation and vision test race conditions (#12715)9060f828067d2d629fa6404b6190fd0d8cad286e
@RitaDiasrefactor: add hasAttachment tag to sentry feedback (#12718)f37d1fb792b682cd2872cca4927616a9e1fca769
@RitaDiasfix(studio): stop eagerly fetching auth for all workspaces at the start (#12704)f131c92b40fd35c1e77667eab7dadcdba1ec2671
@bjoergechore(agents): add code review skills (#12702)8226891466c8ebafcc82ae86cea43f943c61cd55
@bjoergechore(skills): add rxjs skill (#12698)07ac7a76cc68b2135e2196689e569c492cf36ae8
@jordanl17feat(config): add hidden property to workspace configuration (#12599)41c0f2713367ee22181937cc9ff89d67b6473d3e
@bjoergefix(auth): make logout method return promise in auth store types (#12690)a45e005a92f26631654de6d16c8ce1a3ff61ab5e
@bjoergefix(ci): use default lint output format for reliable error visibility (#12696)e53903b7c8d0ab58207f3e3c72a3321a23d7319b
@bjoergechore(skills): update pr-description skill (#12697)039ab5df0c47c3e7adc63e6f03f0edb1915e795e
@bjoergefix(ci): add auth store e2e tests (#12647)9229abc562bd314d692e92b54f82f024d9e86026
@jordanl17fix(types): correct BlockRule value type from any[] to PortableTextBlock (#12509)3ca5e310a3bb2b8d1a8c5f8e4680e2c7f9dd6e22
@kbrabrandfix(sanity): cancel fetch response bodies to prevent connection blocking (#12681)af813e7d4253db21c65a573e4c4bd3bb870216bb
@bjoergefix(ci): exclude markdown files from v8 coverage (#12680)047297dd60f7ff341a3f3aef198374a58577c443
@juice49fix(sanity): use @sanity/uuid to produce feedback session id (#12682)5c9a767aff3efd65df2e73a069f98ad4c864ac83
@bjoergechore(e2e): show pass/fail status in PR comment and report link (#12677)ebed55792b4153f5c334f3f0f818dfa326f8edc2
@RitaDiasfix(preview): reduce redundant fetches in document preview observers (#12624)dd438bd63c3d3b1132d2c8c82e322923cc792855
@bjoergefix(ci): add auth store unit tests (#12646)0ab91e811ef4658da7d3c3a81b3b7030db258844
@bjoergeci(e2e): skip merge-reports when tests never ran (#12597)6db83badbbd8ffd4d2173c6b81837780068964cc
@juice49test(sanity): add missing enabled prop to DivergencesTestProvider (#12618)f534c8fcd426c10c4ef45e414a110985f7373593
@juice49fix(sanity): published id incorrectly supplied to DivergencesProvider as subject id (#12618)8910e18661aa797a6a1c53f474c151aa6393907f
@juice49fix(sanity): stale form context after switching document versions (#12618)8b50bc82ced44552c7c8d061c41e1f6093a2fe13

Fetched April 22, 2026