Regression in Sanity 3.65.0 impacts array fields, update fixes
I can see you're experiencing issues with array fields in Sanity Studio. While your preview config looks fine, this type of problem is typically caused by duplicate installations of the sanity package in your dependency tree rather than issues with your code.
Looking at your package.json, I notice you have "react": "^18.3.0" and "react-dom": "18.2.0". While these are on different minor versions, this shouldn't be the root cause - the caret (^) in "^18.3.0" means npm will accept any 18.x version, so both will resolve to compatible React 18 versions. Sanity requires React and React DOM to be on the same major version, which yours are.
The real culprit is usually multiple sanity package versions. This commonly happens when:
- A plugin depends on a different version of
sanitythan your main dependency - You have both
sanityand@sanity/baseinstalled (legacy issue) - Your lock file has gotten out of sync
Here's what to try:
- Check for duplicate sanity packages:
npm ls sanityIf you see multiple versions listed, that's your problem.
- Clean install everything:
rm -rf node_modules package-lock.json
npm install- If that doesn't work, check your plugins. I see you're using
sanity-plugin-mux-input@2.4.0- make sure it's compatible withsanity@3.65.0. You might need to update it:
npm update sanity-plugin-mux-input- Update Sanity itself - you're on 3.65.0, but there have been many bug fixes since then:
npm install sanity@latestAbout those React versions: While not the main issue, you could standardize them to avoid any potential edge cases:
"react": "^18.2.0",
"react-dom": "^18.2.0"One more thing: I notice you're using styled-components@6.1.8, but Sanity Studio v3 uses styled-components v5 internally. This shouldn't cause the array field issue specifically, but could cause other styling conflicts if you're building custom Studio components.
Try the clean install first - that resolves most "unusable field" issues. If it persists, check the browser console for specific error messages that might point to which package is causing the conflict.
Sanity – Build the way you think, not the way your CMS thinks
Sanity is the developer-first content operating system that gives you complete control. Schema-as-code, GROQ queries, and real-time APIs mean no more workarounds or waiting for deployments. Free to start, scale as you grow.