Skip to content

Deploy v11.7.0#18258

Merged
pettinarip merged 173 commits into
masterfrom
staging
May 22, 2026
Merged

Deploy v11.7.0#18258
pettinarip merged 173 commits into
masterfrom
staging

Conversation

@claude
Copy link
Copy Markdown
Contributor

@claude claude Bot commented May 22, 2026


⚡️ Changes

🌐 Translations

🔧 Tooling

📦 Dependencies


🦄 Contributors

Thank you @0xMushow, @Emgevorgyan, @MarekM25, @akegaviar, @bshastry, @escottalexander, @kafeelraza, @myelinated-wackerow, @pettinarip and @wackerow for the contributions! 🏆


myelinated-wackerow and others added 30 commits May 4, 2026 20:13
Cover Default, Sizes (`md|sm`), HasError (`true|false`), WithoutPlaceholder, WithHelperText, and Disabled. Title hierarchy `UI / Primitives / Textarea` per #18121.

Helper text is rendered as a sibling element with neutral or error tone since `Textarea` does not bundle it natively.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Retitle to `UI / Primitives / Input`. Add HasError, Disabled (with and without value), AutoFocus, and WithHelperText stories. Keep Sizes story focused on the size axis only.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Retitle to `UI / Primitives / Checkbox`. Split the existing kitchen-sink story into focused stories per state: Default, Checked, Indeterminate (new), Disabled, Invalid, and AsGroup composition. Indeterminate addresses the gap called out in #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Retitle to `UI / Primitives / Switch`. Split into focused stories: Off, On, Disabled (off and on), Invalid, WithLabel, and a SettingsList composition. WithLabel and on/off coverage address the gaps called out in #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Retitle to `UI / Primitives / RadioGroup`. Split into focused stories: Default, Disabled (group-wide and per-item), Invalid, TwoItems, FiveItems, and WithDescriptions composition. Item-count variants address the gap called out in #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Default (3 tabs), WithDisabledTab, and ManyPanels (overflow scroll). Title hierarchy `UI / Primitives / Tabs` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Default block usage, SkeletonLines, SkeletonCardContent, SkeletonCard, and SkeletonCardGrid sub-components. Title hierarchy `UI / Skeleton` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Default, Sizes (em-scaled via text-* utilities), WithLabel, and InsideButton compositions. Title hierarchy `UI / Spinner` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Default, Colors (`disabled|primary`), Values (0/25/50/75/100), and WithLabel composition. Title hierarchy `UI / Primitives / Progress` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover TwoLevel, ThreeLevel, WithCurrentPage (BreadcrumbPage), and WithEllipsis (collapsed deep hierarchy). Title hierarchy `UI / Primitives / Breadcrumb` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover VerticalScroll, HorizontalScroll (explicit `ScrollBar orientation`), and ShortContent (no scrollbar). Title hierarchy `UI / Primitives / ScrollArea` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Unordered, Ordered, Nested (mixed ordered/unordered), and PlainList (no markers). Title hierarchy `UI / List` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Closed, Open (`defaultOpen`), WithCustomTrigger (asChild + data-state icon swap), and ListOfDetails composition. Title hierarchy `UI / Primitives / Collapsible` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Default (2-line clamp), OneLine, ThreeLines, FourLines, LineCounts (all four side-by-side), and ShortText edge case. Title hierarchy `UI / TruncatedText` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Default, ResponsiveFlex (`variant: responsiveFlex`), TabNavScrollMargin (`scrollMargin: tabNav`), and TagVariants (`pill|plain`). Includes SectionBanner, SectionTag, SectionHeader, and SectionContent sub-components. Title hierarchy `UI / Section` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Default, WithIcons, Controlled (state-driven via `onSelect`), WithMotion (animated highlight via Framer Motion `layoutId`), and Sticky (wrapped in `StickyContainer`). Title hierarchy `UI / TabNav` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover FlexBase, CenterBase, StackBase, StackWithSeparator, HStackBase, VStackBase, HStackWithSeparator, and VStackWithSeparator. One story per primitive variant per the issue. Title hierarchy `UI / Flex` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Default (whole-card-clickable), WithNestedInteractive (z-index escape hatch for inner controls), and ExternalLink (`!static` override on `LinkOverlay` so the `before:absolute` overlay still anchors to `LinkBox`). Title hierarchy `UI / LinkBox` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover Default, VariantRow, VariantCol, VariantsCompared (side-by-side), VariousIcons (Lucide examples), LabelOnly, and ChildrenOnly. Title hierarchy `UI / SvgButtonLink` per #18121.

Lucide icons are adapted via a small `asIcon` cast because the component's `Svg: FC<SVGProps<SVGElement>>` signature is narrower than Lucide's ref-typed components. A future cleanup could widen the prop type to accept Lucide directly.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Cover BarUsage, LineUsage, AreaUsage (stacked), PieUsage, TooltipIndicators (`dot|line|dashed`), and HiddenLabel. Each story uses `ChartContainer` with a `config` map and references colors via the generated `--color-<key>` CSS variables. Title hierarchy `UI / Chart` per #18121.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Reverts 1badfde. Component is being removed in a separate cleanup; story shouldn't ship.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Component is being removed in a separate cleanup; story shouldn't ship. Replaces the expansion in 8cccb5b and the original story file that lived on dev.

Refs: #18121

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Drops a batch of components identified as unused or story-only in the design-system audit (#18131):

- AdoptionChart, AreaChart, BarChart (local; remaining usages import from recharts directly), BoxGrid, EthVideo, Layer2ProductCard, RandomAppList, Stat
- Banners: UpgradeBannerNotification, EventsOrganizerBanner, DismissableBanner
- ui: drawer, buttons/SvgButtonLink, buttons/ButtonTwoLines (and ButtonLinkTwoLines), radio-group (Quiz uses Radix directly)

Removes their stories, the orphaned bn/dapps markdown file (the /dapps route redirects to /apps, a React route), the now-orphaned vaul dependency (only consumer was ui/drawer), and a stale TODO in PathButton referencing the removed ButtonLinkTwoLines.

Drops the adoption-chart-* keys from the English page-energy-consumption.json (the issue text named the wrong file). Non-English equivalents are removed in a follow-up commit since pipeline manifests for that namespace are not yet in place.

Refs #18131

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Removes the orphaned adoption-chart-* keys from all 24 non-English page-energy-consumption.json files. The owning component (AdoptionChart) was deleted in the prior commit; the namespace has no pipeline manifest yet, so the keys are removed manually here rather than waiting on propagation.

Closes #18131

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Wraps shared Filter groups in <fieldset> via shadcn FieldSet with sr-only legends, and replaces the SwitchFilterInput sibling-<p> label with a real <label> via FieldLabel + FieldDescription. Adds optional FilterItem.optionsLegend so the nested platform sub-groups (mobile/desktop/browser) on /wallets/find-wallet are labeled too. Visual layout unchanged.

Installs the shadcn field component family (field, label, separator) and tunes defaults to match project tokens (text-body-medium, text-error). Drops the dead labelVariants cva and the unneeded "use client" on separator. English-only translation strings added; intl-pipeline will propagate the rest.

Refs #18114 (PR 1 of 2).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Replace the EdgeScrollContainer carousel with a responsive auto-fill grid of row cards (circular avatar left, content right) so the section scales as more hubs are added. Tighten each hub description to a single short line and swap the repetitive per-row CTA copy for a cadence Tag derived from a new cadenceKey field on the hub data. Adds a grid-cols-fill-3-w-full utility for the 26rem minmax variant. Old page-events-hub-cta-* strings remain in the locale JSON files for the intl-pipeline to scrub later.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Adds the oracles challenge from Speedrun Ethereum to the tutorials section.
myelinated-wackerow and others added 13 commits May 21, 2026 06:24
Remove the default `role="alert"` from the Alert component. The site is primarily editorial -- variants like `error`/`warning`/`success` are visual emphasis, not runtime UI state, so applying an assertive live-region role on every render announces static content as urgent on page load. Role is now a plain pass-through via `HTMLAttributes`; consumers opt in to `role="status"` for polite dynamic announcements (e.g. filter result counts) or `role="alert"` for genuine assertive errors. Applied `role="status"` to the two "no results" filter empty-states in FilterEvents and FilterMeetups so they continue announcing politely instead of regressing to silent.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Update the design-system skill knowledge base to reflect the Alert refactor on this branch: new `banner` variant absorbs `BannerNotification`; ARIA `role` is now opt-in rather than always `role="alert"`; `AlertTitle` switched from `<h6>` to `<p>`. Updated entries across SKILL.md (import cheatsheet), components.md (Alert canonical usage + parts inventory + anti-pattern block warning against inline `<p><strong>` lead-ins), canonical-imports.md (banners/callouts/alerts section), a11y.md (preserved general `<aside>` framing while updating live-region guidance), gotchas.md (Callout consolidation list no longer mentions BannerNotification), variant-vs-new.md (added BannerNotification absorption as a worked precedent), and cleanup-playbook.md (added two migration recipes -- BannerNotification -> Alert variant="banner" and inline-strong-lead-in -> AlertTitle + AlertDescription).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Add new bounty hunter 'sonny2k' to JSON data
…uri-3.1.2

build(deps): bump fast-uri from 3.0.6 to 3.1.2
…xml-builder-1.2.0

build(deps): bump fast-xml-builder from 1.1.5 to 1.2.0
refactor(ui): Alert primitive + banner variant
The action authenticates with Anthropic via GitHub OIDC and fails with
"Could not fetch an OIDC token" without this permission. First test run
on dev (workflow run 26290559253) failed for this reason.
Falling back to GITHUB_TOKEN looks safe but silently degrades: the deploy
PR is created, but no pull_request workflows fire on it (CI, deploy
preview), and the Discord notification still reports success. Fail fast
instead if RELEASE_BOT_TOKEN is missing.
fix(weekly-release): grant id-token permission and require RELEASE_BOT_TOKEN
@claude claude Bot requested review from pettinarip and wackerow as code owners May 22, 2026 14:02
@netlify
Copy link
Copy Markdown

netlify Bot commented May 22, 2026

Deploy Preview for ethereumorg ready!

Name Link
🔨 Latest commit de4395f
🔍 Latest deploy log https://app.netlify.com/projects/ethereumorg/deploys/6a1079c0f4d2620008cb4fd4
😎 Deploy Preview https://deploy-preview-18258.ethereum.it
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
7 paths audited
Performance: 67 (🟢 up 3 from production)
Accessibility: 96 (no change from production)
Best Practices: 100 (🟢 up 1 from production)
SEO: 99 (no change from production)
PWA: 59 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

@github-actions github-actions Bot added content 🖋️ This involves copy additions or edits dependencies 📦 Changes related to project dependencies documentation 📖 Change or add documentation tooling 🔧 Changes related to tooling of the project translation 🌍 This is related to our Translation Program labels May 22, 2026
@github-actions
Copy link
Copy Markdown
Contributor

Page Performance Accessibility Best practices SEO PWA

Lighthouse scores are calculated based on the latest audit results

11 roadmap pages (security, scaling, user-experience, fusaka, dencun,
pectra, glamsterdam, single-slot-finality, statelessness, pbs, zkevm)
only set `description` in frontmatter. After RoadmapLayout was folded
into TopicLayout, the hero read from `summary`/`summaryPoints` only,
so those pages rendered with an empty hero description (caught by
Chromatic).

Restore parity with the pre-refactor RoadmapLayout — which spread the
whole frontmatter into ContentHero — by falling back to
`frontmatter.description` when neither `summary` nor `summaryPoints`
is set.
fix(layouts): fall back to description in topic hero
The recent change that routed fenced code through Codeblock made the
shared <Pre> wrapper an async server component (Codeblock awaits
shiki's highlight()). Chromatic's client-side test runner can't
render async server components, which surfaces as a generic
"Storybook preview hooks can only be called inside decorators and
story functions" error and fails the whole build.

Codeblock has its own dedicated story (with chromatic snapshot
disabled), so removing the <Pre> demo from MdComponents keeps full
visual coverage of every other md element (headings, paragraphs,
title, divider, hr, featured text) without duplicating coverage of
Codeblock.
fix(storybook): drop Pre from MdComponents story to unblock chromatic
@pettinarip
Copy link
Copy Markdown
Member

/review-release summary — Deploy v11.7.0

Verified the staging deploy at https://staging.ethereum.org/ against the key changes in this PR.

# Page URL Status Result Notes
1 Homepage /en/ 200 ✅ Pass Loads, hero renders, title Ethereum - The complete guide from ethereum.org includes ethereum.org suffix (#18196).
2 Smart-contract anatomy (codeblocks) /en/developers/docs/smart-contracts/anatomy/ 200 ⚠️ Partial 11× .shiki code blocks, 0× prism .token — shiki migration (#18194) confirmed. Theme rendered is one-light / one-dark-pro, NOT vitesse — worth confirming (#18195).
3 Community hub /en/community/ 200 ✅ Pass Hub-card grid uses sm:grid-cols-2 md:grid-cols-3 xl:grid-cols-5 (#18169).
4 Bug bounty /en/bug-bounty/ 200 ✅ Pass EngineAPI present in out-of-scope section (#18225); sonny2k present in leaderboard (#18251).
5 Translatathon /en/translatathon/ & /leaderboard/ 404 ✅ Pass Both pages return "Page not found" — deprecation (#18197) effective.
6 Rust dev docs /en/developers/docs/programming-languages/rust/ 200 ✅ Pass "Stylus - Rust SDK for building smart contracts on Arbitrum" present (#18189).
7 Decentralized storage /en/developers/docs/storage/ 200 ✅ Pass dweb3 and web3compass both present (#18187).
8 Topic layout — Learn /en/learn/ 200 ✅ Pass Renders hero + 8 sections cleanly (#18198).
8b Topic layout — Roadmap /en/roadmap/ 200 ✅ Pass Hero description renders — confirms recent fix/roadmap-hero-description is on staging.

Worth flagging before merge

Everything else verified successfully.

Informational only — this is not a PR review. Approval and merge remain manual.

@pettinarip pettinarip merged commit b645928 into master May 22, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

content 🖋️ This involves copy additions or edits dependencies 📦 Changes related to project dependencies documentation 📖 Change or add documentation tooling 🔧 Changes related to tooling of the project translation 🌍 This is related to our Translation Program

Projects

None yet

Development

Successfully merging this pull request may close these issues.