fix(rust): put the word on the pill, not only the dot
All checks were successful
PR Checks / client-build (pull_request) Successful in 24s
PR Checks / server-tests (pull_request) Successful in 25s
PR Checks / frozen-manifest (pull_request) Successful in 47s

A filled circle beside a hollow one is the whole difference between "you
have this in game" and "you do not yet", which is more than a shape should
have to carry — and a reader who cannot tell the two apart gets no answer
at all. The pill now reads "<server> · has it" or "<server> · waiting",
which is also what the app's leg says, so the two surfaces describe the
same state in the same words.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PMH6bw1jXMgbyF3ZWGEzSM
This commit is contained in:
2026-09-22 20:32:34 -05:00
parent 383e89442e
commit c4dda5f85c

View File

@@ -151,17 +151,20 @@ function Reach({ reach }) {
{reach.map((server) => (
<span
key={server.id}
title={server.live ? 'This server has it' : 'This server has not confirmed it yet'}
style={{
border: '1px solid var(--line, rgba(255,255,255,0.14))',
borderRadius: 999,
padding: '2px 10px',
color: server.live ? 'var(--head)' : undefined,
opacity: server.live ? 1 : 0.6,
opacity: server.live ? 1 : 0.65,
}}
>
{/* The word, not only the dot. A filled circle beside a hollow one is
the whole difference between "you have this in game" and "you do
not yet", which is more than a shape should have to carry — and a
reader who cannot tell the two apart gets no answer at all. */}
{server.live ? '● ' : '○ '}
{server.name}
{server.name} · {server.live ? 'has it' : 'waiting'}
</span>
))}
</div>
@@ -250,7 +253,7 @@ function Held({ accounts }) {
{accounts > 0 && waiting && (
<p className="sans dim" style={{ fontSize: '0.76rem', marginTop: 12, maxWidth: '60ch' }}>
A hollow dot is a server that has not confirmed it yet. One that is offline catches up
A server marked <em>waiting</em> has not confirmed it yet. One that is offline catches up
when it comes back.
</p>
)}