the shipped generative UI path had no end-to-end teaching surface: `present(` appeared once in all of the docs content, inside an AG-UI protocol page, the install command appeared nowhere, and the one page titled Generative UI taught the legacy MessagePrimitive.GenerativeUI allowlist. no example or template used the package.
rewrite /docs/tools/generative-ui as the quickstart (install, withAui, the use generative toolkit, provider registration, server route), with callouts for the two setup mistakes that stall a run silently. move the legacy primitive to its own page following the interactables-legacy precedent, and give Slack and Teams detailed standalone pages covering the per-component mapping, the budgets and their behavior, and the action round trip both ways.
fix the entries that pointed the wrong way: the installation card named Generative UI linked to tool-ui, the tools decision table named the legacy primitive, the examples card described the old system. link /elements and /elements/vocabulary from docs prose, previously reachable only through a stale /gallery redirect.
give examples/with-generative-ui the shipped path as its landing route, with its own toolkit and route so the Tool UI entries cannot compete with present. the previous landing route moves to /tool-ui; the legacy routes stay and are labelled.
follow-up: #5765 (recapture the example screenshot).
restores `components/ui/radix/tooltip.tsx` to the stock shadcn shape by dropping the implicit `TooltipProvider` wrapper, so replacing that file with the upstream one no longer changes how our components behave.
every consumer of the radix tooltip now supplies its own provider, matching what the base twins already did. radix's root reads provider context with no default, so a provider-less root throws rather than falling back to a delay, which makes that coverage load bearing rather than cosmetic.
closes#5575
bumps next to 16.3 across every app and takes the typescript 7 type checking the release enables, replacing the `@typescript/typescript6` alias each next app carried for next's old javascript compiler API.
also gives the use-generative loader rule its own turbopack entry so it stops matching generated modules (which broke examples/with-ffmpeg on 16.3) without narrowing a caller's own loaders, gitignores the agent rules `next dev` now writes per app, and excludes next from the release age policy.