feat(slots): show payload build source icon in proposer column#747
Merged
barnabasbusa merged 5 commits intoJun 19, 2026
Merged
Conversation
…y with 4 updates Bumps the ui-package-dependencies group with 4 updates in the /ui-package directory: [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query), [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react), [viem](https://github.com/wevm/viem) and [sass](https://github.com/sass/dart-sass). Updates `@tanstack/react-query` from 5.100.14 to 5.101.0 - [Release notes](https://github.com/TanStack/query/releases) - [Changelog](https://github.com/TanStack/query/blob/main/packages/react-query/CHANGELOG.md) - [Commits](https://github.com/TanStack/query/commits/@tanstack/react-query@5.101.0/packages/react-query) Updates `@types/react` from 19.2.16 to 19.2.17 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `viem` from 2.52.0 to 2.52.2 - [Release notes](https://github.com/wevm/viem/releases) - [Commits](https://github.com/wevm/viem/compare/viem@2.52.0...viem@2.52.2) Updates `sass` from 1.100.0 to 1.101.0 - [Release notes](https://github.com/sass/dart-sass/releases) - [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md) - [Commits](sass/dart-sass@1.100.0...1.101.0) --- updated-dependencies: - dependency-name: "@tanstack/react-query" dependency-version: 5.101.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: ui-package-dependencies - dependency-name: "@types/react" dependency-version: 19.2.17 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: ui-package-dependencies - dependency-name: viem dependency-version: 2.52.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: ui-package-dependencies - dependency-name: sass dependency-version: 1.101.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: ui-package-dependencies ... Signed-off-by: dependabot[bot] <support@github.com>
Repurpose the proposer icon on the slots list to indicate the payload build source on Gloas+ blocks: a house icon for self-built payloads and a hard-hat icon for builder-built payloads. The hard-hat links to the builder URL when known (otherwise the internal builder page). Pre-Gloas blocks keep the default validator icon. Builder data is now populated whenever the Proposer column is shown, not only when the optional Builder column is enabled.
Scheduled and missing slots have no payload yet, so dbSlot.BuilderIndex defaults to 0 and was incorrectly rendered as a builder-built (hard-hat) icon. Only populate build-source info for slots with an actual block (proposed or orphaned).
EIP-7732 emits a synthetic missing-block row per slot (status Missing, unknown proposer). These have no determinable build source, so render them without any leading icon instead of falling back to the validator person icon. Scheduled/missing slots and unknown proposers now show the proposer label (or 'unknown') with no favicon.
Apply the same proposer build-source icon treatment to the Blocks page as the Slots page: house for self-built, hard-hat (linking to builder) for builder-built, and no icon for scheduled/missing/unknown rows.
a77bb53 to
84d88ed
Compare
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.
Summary
In the Slots list view, the proposer icon now indicates the payload build source on Gloas+ (EIP-7732) blocks:
fa-house— self-built payloadfa-hard-hat— builder-built payload; the icon links to the builder URL (external) when known, otherwise to the internal/builder/{index}pagefa-male(unchanged) — pre-Gloas blocks with no builder infoBoth icons carry a tooltip describing the build source. The separate optional Builder column is left untouched.
Changes
utils/format.go— newFormatProposerWithBuildSourceformatter that selects the icon based onHasBuilder/BuilderIndex(self-built sentinel =MaxUint64) and links builder-built payloads to the builder URL.utils/templateFucs.go— registerformatProposerWithBuildSource.handlers/slots.go— populate builder info whenever the Proposer column is shown, not only when the Builder column is enabled.templates/slots/slots.html— use the new formatter in the Proposer cell.The underlying build-source data and builder-URL lookup (
GetBuilderURL) already existed and are reused as-is.Test plan
go build ./...andgo vet ./utils ./handlerspass