Skip to content

Link the builder payload icon to the builder page and show builder names - #852

Merged
barnabasbusa merged 1 commit into
masterfrom
bbusa/builder-icon-link-and-name
Aug 26, 2026
Merged

Link the builder payload icon to the builder page and show builder names#852
barnabasbusa merged 1 commit into
masterfrom
bbusa/builder-icon-link-and-name

Conversation

@barnabasbusa

Copy link
Copy Markdown
Collaborator

Problem

On Gloas devnets the hard-hat "builder-built payload" icon next to the proposer linked out to the buildoor's external API URL (target="_blank") whenever the buildoor inventory knew it, instead of the builder details page. Its tooltip also only ever printed the raw builder index (builder 10045) even when the inventory had a name for it.

The dedicated Builder column had the inverse problem: whenever an external URL was known it dropped the builder name and collapsed to the bare index.

Changes

  • FormatProposerWithBuildSource (+ its JS twin in page-index.js) always links the icon to /builder/<index> and names the builder in the tooltip when known: Builder-built payload by <name> (<index>).
  • The proposer helper now takes the builder name instead of the URL; the index page handler resolves it (builder_name added to the index JSON models) and the templates pass it through.
  • formatBuilder keeps the builder name when an external URL is known and only shows the URL on hover.
  • .hack/devnet/run.sh now detects per-participant buildoor instances (buildoor-<cl>-<el>-<n>, from ethereum-package buildoor_params.instances), so local devnets resolve builder names.

Screenshots (local kurtosis devnet, gloas at epoch 1, one buildoor)

Proposer column — icon now links to /builder/0, tooltip names the builder:

proposer icon tooltip

Builder column — name shown inline, buildoor URL only on hover:

builder column

Index page (knockout-rendered rows):

index page

The hard-hat build-source icon next to the proposer linked out to the
buildoor's external API URL whenever the inventory knew it, and its tooltip
only ever printed the raw builder index. It now always links to the internal
/builder/<index> page and names the builder in the tooltip when known.

The dedicated Builder column also dropped the builder name whenever an
external URL was known, collapsing to the bare index. It now keeps the name
and only surfaces the URL on hover.

The local devnet script now detects per-participant buildoor instances
(buildoor-<cl>-<el>-<n>) so their names resolve in dora.
@redpandabot

redpandabot Bot commented Aug 26, 2026

Copy link
Copy Markdown

Summary

The PR links the builder-built proposer icon to /builder/, adds the builder name to its tooltip, and preserves the builder name in the Builder column (URL only on hover), plumbing builder_name through the index page models, handler, templates, and the JS twin. The Pl/JS/template/model changes are consistent and correctly escaped; I found no blockers, only a hedged concern about the devnet buildoor container-discovery filter and a stale JS parameter name in the knockout wrapper.

Issues

  • 🟡 .hack/devnet/run.sh:50buildoor discovery switched from exact service-id label to docker container-name substring — Every other service selection in this file (lines 77, 171, and the beacon/execution filters) uses the kurtosis com.kurtosistech.id label, but buildoor is now selected with docker ps -f name=buildoor, which depends on the docker container name literally containing "buildoor". I could not verify kurtosis/ethereum-package container naming, and if the legacy or per-participant containers are named without that substring the local override silently falls back to the network overview URL — worth confirming the filter matches on your kurtosis version.
  • 🟢 static/js/page-index.jsknockout wrapper still names the sixth parameter builderUrl — The inner function was renamed to take builderName (line 228) and all templates pass builder_name, but the baseModel.formatProposerWithBuildSource wrapper at line 91 still declares and forwards builderUrl. Correct today only because forwarding is positional; a future caller supplying an actual URL would render it as a builder name in the tooltip. Rename for consistency.

Reviewed @ 45b3c3b6
"The cow has forgotten she was a calf." — Hungarian

@barnabasbusa
barnabasbusa merged commit 80a8359 into master Aug 26, 2026
2 checks passed
@barnabasbusa
barnabasbusa deleted the bbusa/builder-icon-link-and-name branch August 26, 2026 14:19
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.

2 participants