Deploy v11.6.0#18104
Merged
Merged
Conversation
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Gemini <noreply@google.com>
…ption # Conflicts: # src/components/Contributors/index.tsx
Six TrackedSection wrappers on the new homepage auto-fired section_view events via IntersectionObserver with no user input. Matomo counts events as actions, so the homepage's bounce rate became incomparable with other pages and pre-launch baselines (apparent 56% -> 33% post-launch was largely an instrumentation artifact). Removes the wrappers from app/[locale]/page.tsx, deletes the unused component, and adds a comment on trackCustomEvent flagging it as user-initiated only to prevent recurrence. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Adds Phase 4b: a dedicated pass that translates the values of translatable JSX attributes (title, description, alt, aria-label, etc.) on JSX components in markdown content. Restores behavior that regressed when the old i18n/ tree was removed (a110822) and its leftover gemini.ts attribute helpers were stripped as "dead code" (7f244df). The pipeline architecture had remained set up for it -- TRANSLATABLE_ATTRIBUTES list, normalizer emits component-attribute leaves, deterministic apply path -- but no orchestration drove the leaves through an LLM. The pass is self-healing: only sends leaves to the LLM whose English value still appears verbatim in the locale file, so re-runs are no-ops on already-translated attrs. Failures throw and skip manifest stamping per spec's "do no harm" partial-failure rule. Adds a temporary `force_attrs` workflow input (FORCE_ATTRS env) to backfill files in intl/pending-dev that were translated before this pass existed. Self-removable once those files are backfilled. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
…icals The standalone sanitizer step pointed to src/scripts/i18n/sanitize-pr.ts (deleted in the i18n-to-intl-pipeline migration). Sanitization now runs as part of the intl-pipeline translation phase, so a separate sanitizer call here is redundant. Removed the step entirely -- review focuses on reviewing. Adds an explicit note that reporting zero critical issues is acceptable. Counters the asymmetric-reward failure mode where agents fabricate criticals to "show their work." Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Co-Authored-By: Gemini <gemini@google.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
The flag served its one-shot purpose: backfilling JSX attribute translations on files in intl/pending-dev that pre-dated the Phase 4b pass. Backfill is complete (PR #18051 merged into pending). Going forward, normal pipeline runs handle attribute translation correctly via the self-healing filter, and the flag has no remaining use. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Bengali (and likely other indic locales) was getting native-script numerals (১২৩) from Gemini despite the existing rule. Strengthens the indic and cyrillic group rules to "ALWAYS" with explicit script examples, and adds the same rule to the JSX attribute prompt (which had no numeral guidance). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Translations containing the same quote character as the surrounding attribute (e.g. an Arabic title="..." whose value quotes an English phrase) produced invalid JSX. Now escapes inner double-quotes to " in double-quoted attrs and inner single-quotes to ' in single-quoted attrs. Also handles single-quoted source attrs in both the self-healing filter and the apply path. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
…ss-8.5.10 build(deps-dev): bump postcss from 8.5.4 to 8.5.10
Co-authored-by: wackerow <54227730+wackerow@users.noreply.github.com>
…onsensys-links fix: replace dead media.consensys.net links in English docs
…zekiel docs: add shalom-ezekiel as a contributor for maintenance
…date Leaderboard: Update Revofusion points in ethereum execution data
Co-Authored-By: Gemini <gemini@google.com>
Co-Authored-By: Gemini <gemini@google.com>
Co-Authored-By: Gemini <gemini@google.com>
Co-Authored-By: Gemini <gemini@google.com>
Co-Authored-By: Gemini <gemini@google.com>
Translates the 10 <ExpandableCard title="..."> values in public/content/staking/withdrawals/index.md for all 24 non-English locales. These attributes were missed by the intl-pipeline because intl-content-tree's parseMarkdown does not recognize multi-line JSX components, so the Phase 4b extractor returned zero leaves for them. Fix-forward pending an upstream parser fix or a regex-based extractor in jsx-attribute-translator.ts. Each translation drafted using ETHGlossary canonical terms where available and matched against existing body terminology, then reviewed by Gemini with corrections applied where flagged. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com> Co-Authored-By: Gemini <gemini@google.com>
i18n: translation pipeline (all languages)
Bounty: Leaderboard update for Jeongmin Choi
✅ Deploy Preview for ethereumorg ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
The module-level `readFileSync` call ran at import time, which broke Storybook (Chromatic) since `MdComponents` re-exports `Contributors`. Webpack stubs `fs` in the browser, so importing the module crashed with `(0 , fs_ignored_.readFileSync) is not a function` and Chromatic could not extract stories. Wrap the read in a memoized getter so importing the module is side-effect free; the read still happens once per SSG worker on first render.
5 tasks
fix(contributors): defer .all-contributorsrc read to fix Storybook bundle
trigger.config.ts reads process.env.TRIGGER_PROJECT_REF, but the workflow only forwarded TRIGGER_ACCESS_TOKEN, so deploys failed with "Project not found: undefined" on every run since the workflow was added.
2 tasks
ci(data-layer): pass TRIGGER_PROJECT_REF to trigger deploy
- FindWalletPage walletRows: exclude hidden rows so filter assertions only run against visible wallets after the find-wallet list switched from virtualization to render-all-and-hide. - home mobile nav: subsection renamed from "basics" to "ethereum explained" in the navigation update.
pettinarip
previously approved these changes
May 1, 2026
Member
pettinarip
left a comment
There was a problem hiding this comment.
Reviewed staging deploy. All key changes verified.
| Page / Change | Status | Notes |
|---|---|---|
| Homepage | ✅ Pass | Loads cleanly, hero & nav render correctly |
/wallets/find-wallet SSR (#18067) |
✅ Pass | Wallet names present in raw HTML; 52 wallets rendered |
| Wallet AA metadata, EIP-4337 / EIP-7702 (#17062) | ✅ Pass | "Smart accounts" + "Account upgrades" filters visible; 4337/7702 strings present |
| Wallet evaluation methodology (#18025) | ✅ Pass | "How we evaluate wallets" section with id="listing-methodology" and criteria copy visible |
/layer-2/networks SSR (#18068) |
✅ Pass | Network names (Arbitrum One, OP Mainnet, Base, Linea, Scroll, Starknet, zkSync) present in raw HTML |
/staking/withdrawals max-eb content (#17274) |
✅ Pass | Compounding validators / 2048 ETH / MaxEB / consolidation copy all present |
| Navigation: remove use case pop-out (#18058) | ✅ Pass | Use → Use cases displays as inline list, no extra pop-out |
| Buenos Aires community hub (#17951) | ✅ Pass | BA hub card visible on /community/events/ |
| LinkWithArrow arrow after label (#18060) | ✅ Pass | "Start here ›" and "Try more guides →" show arrow after label |
LGTM 🚀
…-mobile-nav fix(e2e): align tests with SSR wallet list and renamed nav subsection
Contributor
Lighthouse scores are calculated based on the latest audit results |
pettinarip
approved these changes
May 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

⚡️ Changes
tailwindStylesheetpointer, deprecate.eslintignore(chore: addtailwindStylesheetpointer, deprecate.eslintignore#18029) @myelinated-wackerow🚀 Enhancement
🌐 Translations
📝 Documentation
🔧 Tooling
📦 Dependencies
🦄 Contributors
Thank you @bshastry, @konopkja, @minimalsm, @mnelsonBT, @naftalimurgor, @pettinarip, @qbzzt, @shalom-ezekiel and @wackerow for the contributions! 🏆