fix(ui): say what a held name with no current votes actually means
deploy / build (push) Successful in 6m40s
deploy / deploy-web (push) Successful in 4s
deploy / deploy-api (push) Successful in 15s

A mapping outlives the votes that earned it — deliberately, so a name does not
blink out whenever the feed goes quiet. But the tooltip then rendered "0% of 0
attributed blocks point here", which is arithmetic nonsense dressed as a
statistic.

The top miner takes 87% of blocks at a two-second interval, so its twenty
observations span about forty-seven seconds; votes age out of the window
constantly and this is the ordinary state, not an edge case. It now says the
name rests on evidence older than the current window, which is what is true.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jp6a8EDar9ueEhAxzep4V5
This commit is contained in:
2026-09-09 14:50:32 +03:00
co-authored by Claude Opus 5
parent 992237b03c
commit a177e805f4
+11 -4
View File
@@ -66,10 +66,17 @@ function Row({
// claim, and a percentage alone cannot tell them apart.
className={tentative ? 'chip chip-named chip-guess' : 'chip chip-named'}
title={
`Name inferred from telemetry: ${Math.round(row.confidence * 100)}% of ` +
`${row.attribution_votes} attributed ` +
(row.attribution_votes === 1 ? 'block points' : 'blocks point') +
` here. Best effort — a later block can correct it.`
row.attribution_votes === 0
? // Held from evidence that has since aged out of the vote
// window. "0% of 0" would be arithmetic nonsense; the
// mapping is not less true than it was, only less recently
// corroborated, and the row should say so.
'Name inferred from telemetry, on evidence older than the current window — ' +
'no recent block resolved a first reporter. Best effort; a later block can correct it.'
: `Name inferred from telemetry: ${Math.round(row.confidence * 100)}% of ` +
`${row.attribution_votes} attributed ` +
(row.attribution_votes === 1 ? 'block points' : 'blocks point') +
` here. Best effort — a later block can correct it.`
}
>
{tentative ? 'node?' : 'node'}