## sanity-io/sanity — v6.8.0…v6.9.0

_53 commits._

### Features
- **feat(core): query documents in the selected variant alongside the perspective stack (#13791)** (8989fe7)
- **feat(core): unclaimed project claim intake and nudge (#13705)** (41dd4bf)
- **feat(workbench): export AssetSource types from sanity/workbench (#13827)** (458ca4a)

### Fixes
- **fix(core): avoid native useEffectEvent in forwardRef and memo (#13821)** (8f84cf4)
- **fix(core): stop permission loading-flag churn on every document change (#13771)** (96f5819)
- **fix(dev): migrate profiling minify options from esbuild to vite (#13859)** (d25a51c)
- **fix(deps): update dependency get-it to ^8.8.2 (#13865)** (7ea95c3)
- **perf(sanity): batch connector geometry updates with rAF and bail on unchanged connectors (#13763)** (24a033e)
- **fix(deps): update playwright monorepo to v1.62.1 (#13855)** (40c0ab5)
- **fix(deps): update dependency @sanity/cli to ^7.16.0 (#13858)** (1c690fd)
- **fix(deps): update dependency @sanity/client to ^7.26.0 (#13848)** (8458e48)
- **fix(deps): update portabletext (#13842)** (9320439)
- **fix(deps): update dev-non-major (#13834)** (cfd0b3b)
- **fix(deps): update dependency motion to ^12.43.0 (#13849)** (64f1aa1)
- **fix(deps): update dependency get-it to ^8.8.1 (#13841)** (a4d8244)
- **fix(deps): update react monorepo (#13856)** (cdd01d3)
- **fix(structure): incoming references shouldn't self refer (#13851)** (367be3f)
- **fix(structure): keep inspector crashes inside the inspector panel (#13845)** (cba5181)
- **perf(sanity): defer non-controlled useObservable subscriptions (#13799)** (2958d75)
- **fix(types): preserve supplied schema helper properties (#13237)** (38002e4)
- **fix(core): allow creating draft variants from published variant sibling (#13741)** (cf5a7da)
- **fix(core): update copying variants to different releases from context menu. (#13800)** (3086936)
- **fix(ci): wait for published packages to be installable before post-publish steps (#13823)** (5307277)

### Tests
- **test(e2e): add tasks e2e tests for create, release scoping and resolve (#13754)** (de8fb79)

### Docs
- **docs(agents): adopt useful patterns from plugins AGENTS.md (#13764)** (4794716)

### Chore
- **chore(release): publish v6.9.0 (#13822)** (80a2380)
- **refactor(ui): migrate Stack and Button space prop to gap (#13867)** (8343de2)
- **chore(structure): render doc badges even if the doc is missing (#13743)** (f03b8af)
- **refactor(core): consolidate array list object telemetry events (#13772)** (1a9dffc)
- **chore(lint): prefer function components via oxlint rule (#13826)** (a6b0627)
- **chore(structure): drop redundant incoming references comments (#13852)** (1542aa0)
- **chore(test-dts-exports): remove ui-poc styles.css TS2882 workaround (#13863)** (623e18f)
- **chore(deps): dedupe pnpm-lock.yaml (#13864)** (5d36c67)
- **chore(deps): update dependency oxlint to ^1.76.0 (#13844)** (9eb219e)
- **chore(test-studio): add vitejs devtools integration packages (#13850)** (027245f)
- **chore(deps): dedupe pnpm-lock.yaml (#13853)** (be95af4)
- **chore(deps): update dependency @sanity/tsdown-config to ^0.21.3 (#13862)** (f7d1c45)
- **chore(lint): fix linter issues 🤖 ✨ (#13860)** (32c9c66)
- **chore(deps): update dependency knip to ^6.31.0 (#13843)** (853e4a1)
- **chore(deps): update dependency oxfmt to ^0.62.0 (#13857)** (e386003)
- **chore(deps): update dependency @sanity/ui to ^3.5.1 (#13818)** (ed699ed)
- **chore(deps): update dependency @vanilla-extract/css to ^1.21.2 (#13854)** (41d79dd)
- **chore(deps): update dependency vite to ^8.2.0 (#13846)** (f88be20)
- **chore(deps): update dependency @vitejs/plugin-react to ^6.0.5 (#13840)** (204dc7d)
- **refactor(sanity): adopt useObservablePromise for data loading states (#13828)** (2d7be6a)
- **chore(deps): bump react-rx to v5 and adopt useSyncObservable (#13814)** (d66f505)
- **chore(tests): generate dts tests 🤖 ✨ (#13839)** (01339c4)
- **chore(lint): migrate eslint-plugin-boundaries config to v7 (#13710)** (f8fa390)
- **chore(structure): useDocumentTitle, use document pane provider value (#13742)** (6f46b8d)
- **chore(oxlint): add typescript/no-deprecated rule (#13829)** (bd7b4b1)
- **refactor(sanity): replace useState useEffect observable subscriptions with useObservable (#13788)** (ae2fb78)
- **chore(core): updates @sanity-labs/ui-poc to 0.0.1-alpha.25 (#13832)** (30ec805)
- **chore(core): versions context menu use documentGroupId and versionId (#13820)** (950c5a5)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/sanity-io/sanity?utm_source=github-action)._