Skip to content

docs: KNOWN_BUGS — personas-in-rooms is a known defect (confuses agents) - #1

Closed
Vibherpunk wants to merge 7 commits into
mainfrom
docs/personas-known-bug
Closed

Vibherpunk wants to merge 7 commits into
mainfrom
docs/personas-known-bug

Conversation

@Vibherpunk

Copy link
Copy Markdown
Owner

Summary

The channel-scoped personas feature (commit a9217e6b1 — feat(buzz-acp): channel-scoped personas) that auto-derives a channel persona from a Harbor room is a known bug and has been rolled back.

Why it's a bug

Personas auto-derived from rooms confuse the agents. A channel's system prompt is no longer a single, owned, reviewable instruction set — it gets silently overridden/replaced by whatever persona file happens to live in the mapped Harbor room, resolved per-channel at spawn time. Agents behaved inconsistently depending on room state they could not see or reason about, and the room/persona coupling made prompt provenance opaque.

What was done

  • Rolled the fork back to 924515dd8 (docs: proposal — channel-scoped personas), the last commit before the persona code landed in crates/buzz-acp/src/channel_tools.rs + pool.rs and the desktop persona panel/commands.
  • Built and installed that version (Buzz Desktop 0.4.23-fork, no persona code in buzz-acp or buzz-desktop).
  • Removed every other Buzz install on the machine; only the rolled-back build remains.
  • Relocated the Harbor room persona files out of Harbor into a dedicated folder and staged them as first-class actual agents (owner-reviewed) instead of room-derived personas.

Scope of the rollback

Only the personas-in-rooms surface is reverted. The fork's other addition — channel-scoped tools (skills + MCP servers per channel, channel-tools.toml) — is preserved (it predates a9217e6b1 and does not confuse agents).

Verification

  • strings on the installed buzz-acp: no persona_file / channel-scoped-persona symbols.
  • strings on the installed buzz-desktop: no channel_tools_set_persona / channel_tools_edit_room_persona / channel_tools_get_persona / channel_tools_sync_persona commands.

Recommendation

Do not re-land personas-in-rooms. If per-channel instructions are needed, model them as actual agents (owner-reviewed identities with explicit system prompts), not as room-derived persona overrides.

…servers

Adds a GUI, in the channel header, for viewing and adding the skills and MCP
servers available to agents in a channel. A channel maps to a Harbor room
(~/.buzz/channel-tools.toml); the room is the source of truth, enforced
server-side by Harbor's gate. The panel is a window onto that model — it shells
(in Rust) to the same 'harbor' binary buzz-acp uses, so panel, CLI, and
enforcement all agree on one policy.

- commands/channel_tools.rs: 5 Tauri commands wrapping harbor's audited verbs
  (channel-tools --json read; skills-list --json for the picker;
  skill-room-add / skill-install --room / mcp-add --room mutations). Runs in
  spawn_blocking over std::process (desktop crate has no tokio process
  feature), passes values as distinct argv, rejects flag-like inputs.
- tauriChannelTools.ts: typed invoke wrappers.
- ChannelToolsDialog.tsx: native-styled dialog — current skills/MCP list,
  add-existing-from-pool picker, install-new-from-path, add-MCP form; honest
  'not Harbor-scoped' state for unmapped channels.
- ChannelMembersBar: a 'Channel tools' button (inline + compact variants).

Adds a skill to a channel first (via its room), which is exactly what makes it
available in that channel. Verified: cargo check, tsc, biome, clippy, rustfmt
all clean. Formatters run manually (repo lefthook needs 'just', unavailable).
The channel tools panel now works on ANY channel, not just pre-mapped ones.
Adding a skill or MCP server first scopes the channel on the fly (Rust
ensure_channel_room shells to 'harbor channel-tools <ch> --map', which creates
the channel's room + records the mapping), then adds the tool — so an unmapped
channel like 'welcome-everyone' is a one-click scope-and-add instead of a dead
end. The add commands now take a channel, never a room.

User-facing copy speaks only in Buzz terms: removed the 'not scoped by Harbor /
map it to a Harbor room in channel-tools.toml' dead-end note, the room-source
badge on MCP servers, and the room subtitle in the skill picker; the panel now
always shows the add controls. 'Tools' label added to the header button so it's
discoverable.

Verified: cargo check, clippy, rustfmt, tsc, biome all clean.
X button on each skill / MCP row in the channel tools panel → channel_tools_remove_skill
/ channel_tools_remove_mcp (Rust) shelling to 'harbor skill-remove --yes' / 'harbor
mcp-remove'. Read-only room resolve (no scope-on-the-fly for removal). Closes the add-only
gap: tools can now be taken back out of a channel from the GUI.
Map a Buzz channel to a Harbor room (or explicit MCP servers) via a policy file
(--channel-tools / BUZZ_ACP_CHANNEL_TOOLS). When a channel has an entry, its
server list REPLACES the session's default MCP servers, so a scoped channel
exposes exactly the listed tools/skills and nothing else; unscoped channels are
unchanged. channel_tools.rs (ChannelTools::load/resolve → harbor mcp-server
--room=<room>) + config/lib/pool hooks. The desktop-side management panel is in
desktop/. Pairs with harbor's channel-tools CLI (TDH-Labs/Harbor).
README note + docs/CHANNEL_SCOPED_TOOLS.md: what differs from upstream block/buzz
(channel→Harbor-room scoping via buzz-acp + the desktop Channel tools panel), how
it works, the exact files changed, and how to use it. Links the Harbor-side guide.
Design proposal (NOT built, NOT approved) to add optional persona/persona_file to
ChannelToolsEntry, so one identity can serve different system prompts per channel —
replacing (not additive), fatal-on-error, composes with tool-scoping. Genericized
from an internal hand-off spec; no personal/fleet specifics.
…ts), rolled back to 924515d

The channel-scoped-personas feature (a9217e6) auto-derived a channel persona
from a Harbor room at spawn time. It confused agents by silently overriding the
system prompt with room state they could not see, making prompt provenance
opaque and behavior inconsistent. Rolled back to 924515d (last commit before
the persona code). Personas relocated out of Harbor and staged as actual
owner-reviewed agents. Channel-scoped tools (skills/MCP) are preserved.
@gemini-code-assist

Copy link
Copy Markdown

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

Vibherpunk pushed a commit that referenced this pull request Jul 27, 2026
…ock#3057)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [@tanstack/react-virtual](https://tanstack.com/virtual)
([source](https://redirect.github.com/TanStack/virtual/tree/HEAD/packages/react-virtual))
| [`3.14.6` →
`3.14.8`](https://renovatebot.com/diffs/npm/@tanstack%2freact-virtual/3.14.6/3.14.8)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@tanstack%2freact-virtual/3.14.8?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tanstack%2freact-virtual/3.14.6/3.14.8?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/1) for more information.

---

### Release Notes

<details>
<summary>TanStack/virtual (@&block#8203;tanstack/react-virtual)</summary>

###
[`v3.14.8`](https://redirect.github.com/TanStack/virtual/blob/HEAD/packages/react-virtual/CHANGELOG.md#3148)

[Compare
Source](https://redirect.github.com/TanStack/virtual/compare/@tanstack/react-virtual@3.14.7...@tanstack/react-virtual@3.14.8)

##### Patch Changes

- [#&block#8203;1237](https://redirect.github.com/TanStack/virtual/pull/1237)
[`aa536e7`](https://redirect.github.com/TanStack/virtual/commit/aa536e7746a88d9f55ca8a4b50d2f548a888fea6)
- Fix a gap at the top of the list after an end-anchored prepend in
`directDomUpdates` mode. The prepend grows the total size and bumps
`scrollOffset` to the new bottom in the same pass, but the size
container's height was written *after* `_willUpdate` synced the scroll
position — so the browser clamped the `scrollTop` write to the stale
(shorter) `scrollHeight`, leaving whitespace at the top until the next
scroll. The container is now grown before the scroll sync. Only affected
`directDomUpdates` mode (React-rendered sizers receive their height
during render).

- Updated dependencies
\[[`7ae32b5`](https://redirect.github.com/TanStack/virtual/commit/7ae32b55887fd044a48c788546cd940279b338e0)]:
-
[@&block#8203;tanstack/virtual-core](https://redirect.github.com/tanstack/virtual-core)@&#8203;3.17.6

###
[`v3.14.7`](https://redirect.github.com/TanStack/virtual/blob/HEAD/packages/react-virtual/CHANGELOG.md#3147)

[Compare
Source](https://redirect.github.com/TanStack/virtual/compare/@tanstack/react-virtual@3.14.6...@tanstack/react-virtual@3.14.7)

##### Patch Changes

- Updated dependencies
\[[`1e3b908`](https://redirect.github.com/TanStack/virtual/commit/1e3b908705e04e45be2615f2277580cb09f5cdef),
[`7dcfc07`](https://redirect.github.com/TanStack/virtual/commit/7dcfc07b877479697124157d3124c09537b87a75)]:
-
[@&block#8203;tanstack/virtual-core](https://redirect.github.com/tanstack/virtual-core)@&#8203;3.17.5

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - Between 12:00 AM and 03:59 AM, only on Monday (`* 0-3 * * 1`)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/block/buzz).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yODAuMCIsInVwZGF0ZWRJblZlciI6IjQzLjI4MC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Vibherpunk pushed a commit that referenced this pull request Jul 27, 2026
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [@radix-ui/react-alert-dialog](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/alert-dialog))
| [`1.1.19` →
`1.1.23`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-alert-dialog/1.1.19/1.1.23)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-alert-dialog/1.1.23?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-alert-dialog/1.1.19/1.1.23?slim=true)
|
| [@radix-ui/react-checkbox](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/checkbox))
| [`1.3.7` →
`1.3.11`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-checkbox/1.3.7/1.3.11)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-checkbox/1.3.11?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-checkbox/1.3.7/1.3.11?slim=true)
|
| [@radix-ui/react-dialog](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/dialog))
| [`1.1.19` →
`1.1.23`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dialog/1.1.19/1.1.23)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dialog/1.1.23?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-dialog/1.1.19/1.1.23?slim=true)
|
| [@radix-ui/react-dismissable-layer](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/dismissable-layer))
| [`1.1.15` →
`1.1.19`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dismissable-layer/1.1.15/1.1.19)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dismissable-layer/1.1.19?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-dismissable-layer/1.1.15/1.1.19?slim=true)
|
| [@radix-ui/react-dropdown-menu](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/dropdown-menu))
| [`2.1.20` →
`2.1.24`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dropdown-menu/2.1.20/2.1.24)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dropdown-menu/2.1.24?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-dropdown-menu/2.1.20/2.1.24?slim=true)
|
| [@radix-ui/react-focus-scope](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/focus-scope))
| [`1.1.12` →
`1.1.16`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-focus-scope/1.1.12/1.1.16)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-focus-scope/1.1.16?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-focus-scope/1.1.12/1.1.16?slim=true)
|
| [@radix-ui/react-popover](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/popover))
| [`1.1.19` →
`1.1.23`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-popover/1.1.19/1.1.23)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-popover/1.1.23?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-popover/1.1.19/1.1.23?slim=true)
|
| [@radix-ui/react-separator](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/separator))
| [`1.1.11` →
`1.1.15`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-separator/1.1.11/1.1.15)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-separator/1.1.15?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-separator/1.1.11/1.1.15?slim=true)
|
| [@radix-ui/react-slot](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/slot))
| [`1.3.0` →
`1.3.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-slot/1.3.0/1.3.3)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-slot/1.3.3?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-slot/1.3.0/1.3.3?slim=true)
|
| [@radix-ui/react-tabs](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/tabs))
| [`1.1.17` →
`1.1.21`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tabs/1.1.17/1.1.21)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tabs/1.1.21?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-tabs/1.1.17/1.1.21?slim=true)
|
| [@radix-ui/react-toggle](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/toggle))
| [`1.1.14` →
`1.1.18`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toggle/1.1.14/1.1.18)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-toggle/1.1.18?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-toggle/1.1.14/1.1.18?slim=true)
|
| [@radix-ui/react-tooltip](https://radix-ui.com/primitives)
([source](https://redirect.github.com/radix-ui/primitives/tree/HEAD/packages/react/tooltip))
| [`1.2.12` →
`1.2.16`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tooltip/1.2.12/1.2.16)
|
![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tooltip/1.2.16?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-tooltip/1.2.12/1.2.16?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/1) for more information.

---

### Release Notes

<details>
<summary>radix-ui/primitives
(@&block#8203;radix-ui/react-alert-dialog)</summary>

###
[`v1.1.23`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/alert-dialog/CHANGELOG.md#1123)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.5`,
`@radix-ui/react-context@1.2.2`, `@radix-ui/react-dialog@1.1.23`,
`@radix-ui/react-primitive@2.1.10`

###
[`v1.1.22`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/alert-dialog/CHANGELOG.md#1122)

- Updated dependencies: `@radix-ui/react-dialog@1.1.22`,
`@radix-ui/react-primitive@2.1.9`

###
[`v1.1.21`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/alert-dialog/CHANGELOG.md#1121)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-compose-refs@1.1.4`, `@radix-ui/react-context@1.2.1`,
`@radix-ui/react-dialog@1.1.21`, `@radix-ui/react-primitive@2.1.8`

###
[`v1.1.20`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/alert-dialog/CHANGELOG.md#1120)

- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/react-dialog@1.1.20`,
`@radix-ui/primitive@1.1.6`, `@radix-ui/react-compose-refs@1.1.3`,
`@radix-ui/react-context@1.2.0`, `@radix-ui/react-primitive@2.1.7`

</details>

<details>
<summary>radix-ui/primitives (@&block#8203;radix-ui/react-checkbox)</summary>

###
[`v1.3.11`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/checkbox/CHANGELOG.md#1311)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.5`,
`@radix-ui/react-context@1.2.2`, `@radix-ui/react-presence@1.1.10`,
`@radix-ui/react-primitive@2.1.10`,
`@radix-ui/react-use-controllable-state@1.2.6`,
`@radix-ui/react-use-size@1.1.4`

###
[`v1.3.10`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/checkbox/CHANGELOG.md#1310)

- Updated dependencies: `@radix-ui/react-primitive@2.1.9`

###
[`v1.3.9`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/checkbox/CHANGELOG.md#139)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-compose-refs@1.1.4`, `@radix-ui/react-context@1.2.1`,
`@radix-ui/react-presence@1.1.9`, `@radix-ui/react-primitive@2.1.8`,
`@radix-ui/react-use-controllable-state@1.2.5`,
`@radix-ui/react-use-size@1.1.3`

###
[`v1.3.8`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/checkbox/CHANGELOG.md#138)

- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Fixed a bug where updating a `Checkbox`, `Switch`, or `RadioGroup`
value programmatically (eg. a "select all" control) while inside a
`<form>` would dispatch a `click` event from the hidden bubble input
that propagated to ancestor `onClick` handlers.
- Updated dependencies: `@radix-ui/react-presence@1.1.8`,
`@radix-ui/react-use-controllable-state@1.2.4`,
`@radix-ui/primitive@1.1.6`, `@radix-ui/react-compose-refs@1.1.3`,
`@radix-ui/react-context@1.2.0`, `@radix-ui/react-primitive@2.1.7`,
`@radix-ui/react-use-size@1.1.2`

</details>

<details>
<summary>radix-ui/primitives (@&block#8203;radix-ui/react-dialog)</summary>

###
[`v1.1.23`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dialog/CHANGELOG.md#1123)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.5`,
`@radix-ui/react-context@1.2.2`,
`@radix-ui/react-dismissable-layer@1.1.19`,
`@radix-ui/react-focus-guards@1.1.6`,
`@radix-ui/react-focus-scope@1.1.16`, `@radix-ui/react-id@1.1.4`,
`@radix-ui/react-portal@1.1.17`, `@radix-ui/react-presence@1.1.10`,
`@radix-ui/react-primitive@2.1.10`, `@radix-ui/react-slot@1.3.3`,
`@radix-ui/react-use-controllable-state@1.2.6`,
`@radix-ui/react-use-layout-effect@1.1.4`

###
[`v1.1.22`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dialog/CHANGELOG.md#1122)

- Updated dependencies: `@radix-ui/react-slot@1.3.2`,
`@radix-ui/react-primitive@2.1.9`,
`@radix-ui/react-dismissable-layer@1.1.18`,
`@radix-ui/react-focus-scope@1.1.15`, `@radix-ui/react-portal@1.1.16`

###
[`v1.1.21`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dialog/CHANGELOG.md#1121)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-compose-refs@1.1.4`, `@radix-ui/react-context@1.2.1`,
`@radix-ui/react-dismissable-layer@1.1.17`,
`@radix-ui/react-focus-guards@1.1.5`,
`@radix-ui/react-focus-scope@1.1.14`, `@radix-ui/react-id@1.1.3`,
`@radix-ui/react-portal@1.1.15`, `@radix-ui/react-presence@1.1.9`,
`@radix-ui/react-primitive@2.1.8`, `@radix-ui/react-slot@1.3.1`,
`@radix-ui/react-use-controllable-state@1.2.5`,
`@radix-ui/react-use-layout-effect@1.1.3`

###
[`v1.1.20`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dialog/CHANGELOG.md#1120)

- Fixed broken ARIA references in Dialogs where a title or description
elements are not rendered.
- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/react-dismissable-layer@1.1.16`,
`@radix-ui/react-focus-scope@1.1.13`, `@radix-ui/react-portal@1.1.14`,
`@radix-ui/react-presence@1.1.8`,
`@radix-ui/react-use-controllable-state@1.2.4`,
`@radix-ui/primitive@1.1.6`, `@radix-ui/react-compose-refs@1.1.3`,
`@radix-ui/react-context@1.2.0`, `@radix-ui/react-focus-guards@1.1.4`,
`@radix-ui/react-id@1.1.2`, `@radix-ui/react-primitive@2.1.7`,
`@radix-ui/react-slot@1.3.0`, `@radix-ui/react-use-layout-effect@1.1.2`

</details>

<details>
<summary>radix-ui/primitives
(@&block#8203;radix-ui/react-dismissable-layer)</summary>

###
[`v1.1.19`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dismissable-layer/CHANGELOG.md#1119)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.5`,
`@radix-ui/react-primitive@2.1.10`,
`@radix-ui/react-use-callback-ref@1.1.4`,
`@radix-ui/react-use-effect-event@0.0.5`

###
[`v1.1.18`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dismissable-layer/CHANGELOG.md#1118)

- Updated dependencies: `@radix-ui/react-primitive@2.1.9`

###
[`v1.1.17`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dismissable-layer/CHANGELOG.md#1117)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-compose-refs@1.1.4`, `@radix-ui/react-primitive@2.1.8`,
`@radix-ui/react-use-callback-ref@1.1.3`,
`@radix-ui/react-use-effect-event@0.0.4`

###
[`v1.1.16`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dismissable-layer/CHANGELOG.md#1116)

- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/primitive@1.1.6`,
`@radix-ui/react-compose-refs@1.1.3`, `@radix-ui/react-primitive@2.1.7`,
`@radix-ui/react-use-callback-ref@1.1.2`,
`@radix-ui/react-use-effect-event@0.0.3`

</details>

<details>
<summary>radix-ui/primitives
(@&block#8203;radix-ui/react-dropdown-menu)</summary>

###
[`v2.1.24`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dropdown-menu/CHANGELOG.md#2124)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.5`,
`@radix-ui/react-context@1.2.2`, `@radix-ui/react-id@1.1.4`,
`@radix-ui/react-menu@2.1.24`, `@radix-ui/react-primitive@2.1.10`,
`@radix-ui/react-use-controllable-state@1.2.6`

###
[`v2.1.23`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dropdown-menu/CHANGELOG.md#2123)

- Updated dependencies: `@radix-ui/react-menu@2.1.23`,
`@radix-ui/react-primitive@2.1.9`

###
[`v2.1.22`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dropdown-menu/CHANGELOG.md#2122)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-compose-refs@1.1.4`, `@radix-ui/react-context@1.2.1`,
`@radix-ui/react-id@1.1.3`, `@radix-ui/react-menu@2.1.22`,
`@radix-ui/react-primitive@2.1.8`,
`@radix-ui/react-use-controllable-state@1.2.5`

###
[`v2.1.21`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/dropdown-menu/CHANGELOG.md#2121)

- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/react-menu@2.1.21`,
`@radix-ui/react-use-controllable-state@1.2.4`,
`@radix-ui/primitive@1.1.6`, `@radix-ui/react-compose-refs@1.1.3`,
`@radix-ui/react-context@1.2.0`, `@radix-ui/react-id@1.1.2`,
`@radix-ui/react-primitive@2.1.7`

</details>

<details>
<summary>radix-ui/primitives
(@&block#8203;radix-ui/react-focus-scope)</summary>

###
[`v1.1.16`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/focus-scope/CHANGELOG.md#1116)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.5`,
`@radix-ui/react-primitive@2.1.10`,
`@radix-ui/react-use-callback-ref@1.1.4`

###
[`v1.1.15`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/focus-scope/CHANGELOG.md#1115)

- Updated dependencies: `@radix-ui/react-primitive@2.1.9`

###
[`v1.1.14`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/focus-scope/CHANGELOG.md#1114)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.4`,
`@radix-ui/react-primitive@2.1.8`,
`@radix-ui/react-use-callback-ref@1.1.3`

###
[`v1.1.13`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/focus-scope/CHANGELOG.md#1113)

- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.3`,
`@radix-ui/react-primitive@2.1.7`,
`@radix-ui/react-use-callback-ref@1.1.2`

</details>

<details>
<summary>radix-ui/primitives (@&block#8203;radix-ui/react-popover)</summary>

###
[`v1.1.23`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/popover/CHANGELOG.md#1123)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.5`,
`@radix-ui/react-context@1.2.2`,
`@radix-ui/react-dismissable-layer@1.1.19`,
`@radix-ui/react-focus-guards@1.1.6`,
`@radix-ui/react-focus-scope@1.1.16`, `@radix-ui/react-id@1.1.4`,
`@radix-ui/react-popper@1.3.7`, `@radix-ui/react-portal@1.1.17`,
`@radix-ui/react-presence@1.1.10`, `@radix-ui/react-primitive@2.1.10`,
`@radix-ui/react-slot@1.3.3`,
`@radix-ui/react-use-controllable-state@1.2.6`

###
[`v1.1.22`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/popover/CHANGELOG.md#1122)

- Updated dependencies: `@radix-ui/react-slot@1.3.2`,
`@radix-ui/react-primitive@2.1.9`,
`@radix-ui/react-dismissable-layer@1.1.18`,
`@radix-ui/react-focus-scope@1.1.15`, `@radix-ui/react-popper@1.3.6`,
`@radix-ui/react-portal@1.1.16`

###
[`v1.1.21`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/popover/CHANGELOG.md#1121)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-compose-refs@1.1.4`, `@radix-ui/react-context@1.2.1`,
`@radix-ui/react-dismissable-layer@1.1.17`,
`@radix-ui/react-focus-guards@1.1.5`,
`@radix-ui/react-focus-scope@1.1.14`, `@radix-ui/react-id@1.1.3`,
`@radix-ui/react-popper@1.3.5`, `@radix-ui/react-portal@1.1.15`,
`@radix-ui/react-presence@1.1.9`, `@radix-ui/react-primitive@2.1.8`,
`@radix-ui/react-slot@1.3.1`,
`@radix-ui/react-use-controllable-state@1.2.5`,
`@radix-ui/react-use-layout-effect@1.1.3`

###
[`v1.1.20`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/popover/CHANGELOG.md#1120)

- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/react-popper@1.3.4`,
`@radix-ui/react-dismissable-layer@1.1.16`,
`@radix-ui/react-focus-scope@1.1.13`, `@radix-ui/react-portal@1.1.14`,
`@radix-ui/react-presence@1.1.8`,
`@radix-ui/react-use-controllable-state@1.2.4`,
`@radix-ui/primitive@1.1.6`, `@radix-ui/react-compose-refs@1.1.3`,
`@radix-ui/react-context@1.2.0`, `@radix-ui/react-focus-guards@1.1.4`,
`@radix-ui/react-id@1.1.2`, `@radix-ui/react-primitive@2.1.7`,
`@radix-ui/react-slot@1.3.0`

</details>

<details>
<summary>radix-ui/primitives
(@&block#8203;radix-ui/react-separator)</summary>

###
[`v1.1.15`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/separator/CHANGELOG.md#1115)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-primitive@2.1.10`

###
[`v1.1.14`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/separator/CHANGELOG.md#1114)

- Updated dependencies: `@radix-ui/react-primitive@2.1.9`

###
[`v1.1.13`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/separator/CHANGELOG.md#1113)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/react-primitive@2.1.8`

###
[`v1.1.12`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/separator/CHANGELOG.md#1112)

- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/react-primitive@2.1.7`

</details>

<details>
<summary>radix-ui/primitives (@&block#8203;radix-ui/react-slot)</summary>

###
[`v1.3.3`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/slot/CHANGELOG.md#132-133)

- Reverted breaking changes that caused compatibility issues with React
Server Components.

###
[`v1.3.2`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/slot/CHANGELOG.md#132-133)

- Reverted breaking changes that caused compatibility issues with React
Server Components.

###
[`v1.3.1`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/slot/CHANGELOG.md#131)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-compose-refs@1.1.4`

</details>

<details>
<summary>radix-ui/primitives (@&block#8203;radix-ui/react-tabs)</summary>

###
[`v1.1.21`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/tabs/CHANGELOG.md#1121)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-context@1.2.2`,
`@radix-ui/react-direction@1.1.4`, `@radix-ui/react-id@1.1.4`,
`@radix-ui/react-presence@1.1.10`, `@radix-ui/react-primitive@2.1.10`,
`@radix-ui/react-roving-focus@1.1.19`,
`@radix-ui/react-use-controllable-state@1.2.6`

###
[`v1.1.20`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/tabs/CHANGELOG.md#1120)

- Updated dependencies: `@radix-ui/react-primitive@2.1.9`,
`@radix-ui/react-roving-focus@1.1.18`

###
[`v1.1.19`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/tabs/CHANGELOG.md#1119)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-context@1.2.1`, `@radix-ui/react-direction@1.1.3`,
`@radix-ui/react-id@1.1.3`, `@radix-ui/react-presence@1.1.9`,
`@radix-ui/react-primitive@2.1.8`,
`@radix-ui/react-roving-focus@1.1.17`,
`@radix-ui/react-use-controllable-state@1.2.5`

###
[`v1.1.18`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/tabs/CHANGELOG.md#1118)

- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/react-presence@1.1.8`,
`@radix-ui/react-roving-focus@1.1.16`,
`@radix-ui/react-use-controllable-state@1.2.4`,
`@radix-ui/primitive@1.1.6`, `@radix-ui/react-context@1.2.0`,
`@radix-ui/react-direction@1.1.2`, `@radix-ui/react-id@1.1.2`,
`@radix-ui/react-primitive@2.1.7`

</details>

<details>
<summary>radix-ui/primitives (@&block#8203;radix-ui/react-toggle)</summary>

###
[`v1.1.18`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/toggle/CHANGELOG.md#1118)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-primitive@2.1.10`,
`@radix-ui/react-use-controllable-state@1.2.6`

###
[`v1.1.17`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/toggle/CHANGELOG.md#1117)

- Updated dependencies: `@radix-ui/react-primitive@2.1.9`

###
[`v1.1.16`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/toggle/CHANGELOG.md#1116)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-primitive@2.1.8`,
`@radix-ui/react-use-controllable-state@1.2.5`

###
[`v1.1.15`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/toggle/CHANGELOG.md#1115)

- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/react-use-controllable-state@1.2.4`,
`@radix-ui/primitive@1.1.6`, `@radix-ui/react-primitive@2.1.7`

</details>

<details>
<summary>radix-ui/primitives (@&block#8203;radix-ui/react-tooltip)</summary>

###
[`v1.2.16`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/tooltip/CHANGELOG.md#1216)

- Reverted breaking changes that caused compatibility issues with React
Server Components.
- Updated dependencies: `@radix-ui/react-compose-refs@1.1.5`,
`@radix-ui/react-context@1.2.2`,
`@radix-ui/react-dismissable-layer@1.1.19`, `@radix-ui/react-id@1.1.4`,
`@radix-ui/react-popper@1.3.7`, `@radix-ui/react-portal@1.1.17`,
`@radix-ui/react-presence@1.1.10`, `@radix-ui/react-primitive@2.1.10`,
`@radix-ui/react-slot@1.3.3`,
`@radix-ui/react-use-controllable-state@1.2.6`,
`@radix-ui/react-use-layout-effect@1.1.4`,
`@radix-ui/react-visually-hidden@1.2.11`

###
[`v1.2.15`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/tooltip/CHANGELOG.md#1215)

- Updated dependencies: `@radix-ui/react-slot@1.3.2`,
`@radix-ui/react-primitive@2.1.9`,
`@radix-ui/react-dismissable-layer@1.1.18`,
`@radix-ui/react-popper@1.3.6`, `@radix-ui/react-portal@1.1.16`,
`@radix-ui/react-visually-hidden@1.2.10`

###
[`v1.2.14`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/tooltip/CHANGELOG.md#1214)

- Republish through CI to attach provenance attestations. The previous
versions of these packages were published manually outside of CI and
therefore shipped without provenance; this patch re-releases the same
code through the CI pipeline so every package includes an attestation.
- Updated dependencies: `@radix-ui/primitive@1.1.7`,
`@radix-ui/react-compose-refs@1.1.4`, `@radix-ui/react-context@1.2.1`,
`@radix-ui/react-dismissable-layer@1.1.17`, `@radix-ui/react-id@1.1.3`,
`@radix-ui/react-popper@1.3.5`, `@radix-ui/react-portal@1.1.15`,
`@radix-ui/react-presence@1.1.9`, `@radix-ui/react-primitive@2.1.8`,
`@radix-ui/react-slot@1.3.1`,
`@radix-ui/react-use-controllable-state@1.2.5`,
`@radix-ui/react-use-layout-effect@1.1.3`,
`@radix-ui/react-visually-hidden@1.2.9`

###
[`v1.2.13`](https://redirect.github.com/radix-ui/primitives/blob/HEAD/packages/react/tooltip/CHANGELOG.md#1213)

- Fixed a bug where `Tooltip.Content` children were mounted to the DOM
twice.
- Improved tree-shaking so bundlers can drop unused components.
Component parts are now marked `/* @&block#8203;__PURE__ */` and use named
render functions instead of `Component.displayName = ...` assignments,
which previously prevented dead-code elimination with some bundlers.
- Updated dependencies: `@radix-ui/react-popper@1.3.4`,
`@radix-ui/react-dismissable-layer@1.1.16`,
`@radix-ui/react-portal@1.1.14`, `@radix-ui/react-presence@1.1.8`,
`@radix-ui/react-visually-hidden@1.2.8`,
`@radix-ui/react-use-controllable-state@1.2.4`,
`@radix-ui/primitive@1.1.6`, `@radix-ui/react-compose-refs@1.1.3`,
`@radix-ui/react-context@1.2.0`, `@radix-ui/react-id@1.1.2`,
`@radix-ui/react-primitive@2.1.7`, `@radix-ui/react-slot@1.3.0`,
`@radix-ui/react-use-layout-effect@1.1.2`

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - Between 12:00 AM and 03:59 AM, only on Monday (`* 0-3 * * 1`)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/block/buzz).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yODAuMCIsInVwZGF0ZWRJblZlciI6IjQzLjI4MC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Vibherpunk pushed a commit that referenced this pull request Jul 29, 2026
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [react](https://react.dev/)
([source](https://redirect.github.com/react/react/tree/HEAD/packages/react))
| [`19.2.7` →
`19.2.8`](https://renovatebot.com/diffs/npm/react/19.2.7/19.2.8) |
![age](https://developer.mend.io/api/mc/badges/age/npm/react/19.2.8?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react/19.2.7/19.2.8?slim=true)
|
| [react-dom](https://react.dev/)
([source](https://redirect.github.com/react/react/tree/HEAD/packages/react-dom))
| [`19.2.7` →
`19.2.8`](https://renovatebot.com/diffs/npm/react-dom/19.2.7/19.2.8) |
![age](https://developer.mend.io/api/mc/badges/age/npm/react-dom/19.2.8?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-dom/19.2.7/19.2.8?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/1) for more information.

---

### Release Notes

<details>
<summary>react/react (react)</summary>

###
[`v19.2.8`](https://redirect.github.com/react/react/compare/v19.2.7...1dd4ecbdabf826f527fc9a58c05ea70375b7d170)

[Compare
Source](https://redirect.github.com/react/react/compare/v19.2.7...v19.2.8)

</details>

<details>
<summary>react/react (react-dom)</summary>

###
[`v19.2.8`](https://redirect.github.com/react/react/compare/v19.2.7...1dd4ecbdabf826f527fc9a58c05ea70375b7d170)

[Compare
Source](https://redirect.github.com/react/react/compare/v19.2.7...v19.2.8)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - Between 12:00 AM and 03:59 AM, only on Monday (`* 0-3 * * 1`)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/block/buzz).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yODAuMCIsInVwZGF0ZWRJblZlciI6IjQzLjI4MC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Vibherpunk pushed a commit that referenced this pull request Jul 29, 2026
…lock#3058)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [org.jetbrains.kotlin.android](https://kotlinlang.org/)
([source](https://redirect.github.com/JetBrains/kotlin)) | `2.2.20` →
`2.2.21` |
![age](https://developer.mend.io/api/mc/badges/age/maven/org.jetbrains.kotlin.android:org.jetbrains.kotlin.android.gradle.plugin/2.2.21?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.jetbrains.kotlin.android:org.jetbrains.kotlin.android.gradle.plugin/2.2.20/2.2.21?slim=true)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/1) for more information.

---

### Release Notes

<details>
<summary>JetBrains/kotlin (org.jetbrains.kotlin.android)</summary>

###
[`v2.2.21`](https://redirect.github.com/JetBrains/kotlin/releases/tag/v2.2.21):
Kotlin 2.2.21

#### Changelog

##### Backend. Wasm

- [`KT-81372`](https://youtrack.jetbrains.com/issue/KT-81372) K/Wasm:
JsException: Exception was thrown while running JavaScript code on
Safari 18.2/18.3
- [`KT-80018`](https://youtrack.jetbrains.com/issue/KT-80018) K/Wasm:
exceptions don't work properly in JavaScriptCore (vm inside Safari,
WebKit)

##### Compiler

- [`KT-81191`](https://youtrack.jetbrains.com/issue/KT-81191) K2: "null
cannot be cast to non-null type ConeTypeParameterLookupTag" with invalid
code
- [`KT-80936`](https://youtrack.jetbrains.com/issue/KT-80936)
NON\_PUBLIC\_CALL\_FROM\_PUBLIC\_INLINE : `@PublishedApi` doesn't work
for fun interfaces

##### JavaScript

- [`KT-79926`](https://youtrack.jetbrains.com/issue/KT-79926) Wrong
export of interfaces with companions with ES Modules
- [`KT-81424`](https://youtrack.jetbrains.com/issue/KT-81424) Kotlin/JS:
Cannot Get / in a simple running application
- [`KT-80873`](https://youtrack.jetbrains.com/issue/KT-80873) KJS:
Stdlib requires ES2020-compatible JS engine due to BigInt type literal

##### Native

- [`KT-79384`](https://youtrack.jetbrains.com/issue/KT-79384) K/N:
Application Not Responding: Thread Deadlock

##### Tools. Gradle

- [`KT-79047`](https://youtrack.jetbrains.com/issue/KT-79047) Gradle
compileKotlin fails with configuration cache
- [`KT-81148`](https://youtrack.jetbrains.com/issue/KT-81148) Publishing
helpers in KGP are incompatible with Isolated Projects
- [`KT-80950`](https://youtrack.jetbrains.com/issue/KT-80950) KGP breaks
configuration cache when signing plugin with GnuPG is applied

##### Tools. Gradle. Multiplatform

- [`KT-61127`](https://youtrack.jetbrains.com/issue/KT-61127) Remove
scoped resolvable and intransitive DependenciesMetadata configurations
used in the pre-IdeMultiplatformImport IDE import
- [`KT-81249`](https://youtrack.jetbrains.com/issue/KT-81249) Kotlin
2.2.20 broke KMP implementation of Parcelize

##### Tools. Gradle. Native

- [`KT-81510`](https://youtrack.jetbrains.com/issue/KT-81510)
`commonizeCInterop` exception with 'kotlinNativeBundleConfiguration' not
found
- [`KT-81134`](https://youtrack.jetbrains.com/issue/KT-81134) Native:
Gradle configuration failure likely related to Klibs cross-compilation
- [`KT-77732`](https://youtrack.jetbrains.com/issue/KT-77732)
`commonizeCInterop` failed with "Unresolved classifier:
platform/posix/size\_t"
- [`KT-80675`](https://youtrack.jetbrains.com/issue/KT-80675) Commonized
cinterops between "test" compilations produce an import failure

##### Tools. Maven

- [`KT-81218`](https://youtrack.jetbrains.com/issue/KT-81218) Kotlin
Maven Plugin 2.2.20: Java classes not resolved with enabled incremental
compilation without daemon

##### Tools. Wasm

- [`KT-80582`](https://youtrack.jetbrains.com/issue/KT-80582) Multiple
reloads when using webpack dev server after 2.2.20-Beta2

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - Between 12:00 AM and 03:59 AM, only on Monday (`* 0-3 * * 1`)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/block/buzz).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yODAuMCIsInVwZGF0ZWRJblZlciI6IjQzLjI4MC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@Vibherpunk Vibherpunk closed this in bc9e652 Aug 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant