Repository navigation
chore(test-studio): enable beta.reactActivityMode on sanity@next - #2033
Conversation
Re-resolves the `next` overrides for sanity, @sanity/vision, @sanity/types, @sanity/util, @sanity/schema, @sanity/mutator and groq to 6.17.0-next.106 (built from sanity-io/sanity@f5821c33bf), regenerated with `pnpm dedupe` until `pnpm dedupe --check` passes. sanity@6.17.0-next.106 depends on @sanity/sdk and @sanity/sdk-react ^3.5.0, which sanity-svc.npm published without provenance attestations, so they are added to trustPolicyExclude alongside the existing @sanity/sdk entries.
Opts every test studio workspace into the new `beta.reactActivityMode` flag from sanity-io/sanity#14901, so plugin tools are exercised while kept mounted behind React's <Activity> when switching between tools.
|
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
✅ E2E Tests🟢 44 passed • view full report • view run Studio: https://plugins-e2e-test-studio-21j5cniiq.sanity.dev Datasets: |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
Coverage Report
File CoverageNo changed files found. |
The sanity@next bump brings in vite@8.3.1, whose bundled-dev client inlines rolldown 1.2.9's runtime while its `rolldown: ~1.2.9` range resolves 1.2.11. rolldown 1.2.10 dropped the `kind` argument from registerFactory (rolldown/rolldown#10915), so every lazy import in the test studio's `sanity dev` failed with `factory.fn is not a function`. Same override as #2034.
Resolves the pnpm-lock.yaml conflict with #2034 by keeping this branch's lockfile: it already has vite@8.3.1 with the identical `vite@8.3.1>rolldown` pin that #2034 added, on top of the sanity@next bump, and passes `pnpm install --frozen-lockfile` and `pnpm dedupe --check` against the merged manifests.
Description
Turns on the new
beta.reactActivityModeflag from sanity-io/sanity#14901 for every workspace indev/test-studio, so the plugins in this monorepo get dogfooded with recently used tools kept mounted behind React's<Activity>(effects torn down while hidden, re-created on reveal) instead of being unmounted on tool switch.The flag's typings ship in
sanity@6.17.0-next.106, published by Release @next run 36426787139 from the PR's merge commit (f5821c33bf). The lockfile was still on6.13.3-next.7, where the config fails type-checking withTS2353: 'reactActivityMode' does not exist in type 'BetaFeatures', so this also re-resolves thenextoverrides.Changes
dev/test-studio/sanity.config.ts: a sharedbetaconstant applied bycreateWorkspace(placed before...config, so a workspace that defines its ownbetastill opts out) and on the standalonecross-dataset-duplicator-targetworkspace, which also registers a tool.pnpm-lock.yaml:sanity,@sanity/vision,@sanity/types,@sanity/util,@sanity/schema,@sanity/mutatorandgroqmove in lockstep from6.13.3-next.7to6.17.0-next.106(one copy of each). Regenerated withpnpm dedupe, the same command the "Dedupe lockfile" workflow runs, repeated untilpnpm dedupe --checkpasses, so no follow-up bot PR is needed. That also collapses duplicates the bump would otherwise leave behind, which is why a few direct deps shift to in-range versions already in the graph:@codemirror/state6.7.6 /@codemirror/view6.43.13 /@uiw/react-codemirror4.25.12 (code-input),xstate5.33.2 (dashboard-widget-vercel),@mux/mux-player(-react)3.13.4 (mux-input),@tanstack/react-virtual3.14.13 (workflow),uuid14.0.2 (graph-view),axios1.20.0 (shopify-assets). Catalogs andpackage.jsonspecifiers are unchanged.pnpm-workspace.yaml:sanity@6.17.0-next.106needs@sanity/sdkand@sanity/sdk-react^3.5.0, whichsanity-svc.npmpublished fromsanity-io/sdkwithout provenance (since 3.4.0), trippingtrustPolicy: no-downgrade.3.5.0of both is added totrustPolicyExcludenext to the existing@sanity/sdk@2.1.2 || 3.0.0-rc.1entry. Without this,pnpm dedupeonmain(and so the Dedupe lockfile workflow) currently fails withERR_PNPM_TRUST_DOWNGRADE.The bump also pulls in
vite@8.3.1, whose bundled-dev client needs thevite@8.3.1>rolldown: 1.2.9pin; without it every lazy chunk inpnpm devfails withfactory.fn is not a function. That pin landed onmainin #2034 (this branch had added the identical override before it merged), and the merge keeps this branch's deduped lockfile, which already resolvesvite@8.3.1→rolldown@1.2.9.No changeset: only the private test studio and workspace tooling change; published package ranges are untouched.
Testing
pnpm format,pnpm lint(type-aware),pnpm knip,pnpm build(52 tasks) andpnpm test run(224 files, 1391 tests) all pass locally.pnpm oxlint dev/test-studio/sanity.config.tsfails withTS2353on6.13.3-next.7and passes on6.17.0-next.106.main:pnpm install --frozen-lockfileandpnpm dedupe --checkboth pass, and CI is green on the merge commit.pnpm devon the Home workspace, switching tools only through the navbar (no reloads): Structure with "Size chart demo" open → Vision (ran*[_type == "tableTest"]{_id, title}) → Structure → Vision → Media → Structure → Vision./home/structure/input-plugins;tableTest;fe661a85-…, and Structure came back with the document open and no loading state both times.@sanity/visionre-runs the current query when revealed. The results don't flash; this is upstream Vision behaviour under<Activity>, not something this PR changes.test_studio_react_activity_mode_structure_vision_media_keep_state.mp4
To show artifacts inline, enable in settings.