ux: screen 0 truncates names its own rank list shows in full
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 67/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Quiet
- Tech stack
- javascript
- Domain
- frontend
Research direction
Start in dashboard/frontend/js/leaderboard.js, reading shortName and the label factory around the cited lines; check its uses for the Leaderboard tab and Home screen 0. Then verify the change in a browser at the listed desktop viewports, especially 1280px. Done means screen 0 shows full labels without triggering arrow-only degradation, while the tab and tooltip retain truncation.
Written by the indexing model from the issue text.
Description
shortName (dashboard/frontend/js/leaderboard.js:107-109) truncates any label
over 18 characters to 17 plus an ellipsis:
return label && label.length > 18 ? `${label.slice(0, 17)}…` : (label || '');
It feeds the board-frame endpoint labels at :1440 (name: shortName(ds.label)),
so both the Leaderboard tab and Home screen 0 render Nemotron 3 Nano 30B as
Nemotron 3 Nano 3….
On the Leaderboard tab that is fine and probably wanted — the tab's custom
legend carries full names, and a longer name would widen a rail the board
already wants to keep narrow.
On Home screen 0 it reads as an accident. The truncated pill sits directly
beside a rank list rendering the same name in full, so the ellipsis costs
recognisability of the exact thing the panel is ranking and buys nothing.
The obvious objection does not hold — measured, not assumed. The frame sizes
its gutter from a measured label block (boardLabelBlockWidth), and a block
wider than BOARD_GUTTER_MAX_FRACTION (0.5) of the canvas trips the arrow-only
degradation and drops every label. So one might expect the 18-character cut to be
what keeps screen 0 out of that degradation. From the rendered measurements taken
during this work (9 rows on screen 0, measured floor 211px):
| viewport | screen-0 canvas | 0.5 × canvas | measured floor | headroom |
|---|---|---|---|---|
| 1920 | 618 × 260 | 309 | 211 | 98px |
| 1440 | 550 × 211 | 275 | 211 | 64px |
| 1280 | 482 × 211 | 241 | 211 | 30px |
| 390 | 253 × 219 | 126 | 211 | already degraded |
The tightest desktop case has ~30px of headroom against roughly 6–7px of growth
for one extra character at Inter 600 11px. The 390px breakpoint already renders
zero labels by design, with or without truncation. The cut is not load-bearing at
any breakpoint.
Suggested shape. Make truncation an option on the label factory rather than a
property of shortName, so the tab keeps it and screen 0 passes the full label.
Do not simply delete the cut — :1721 uses shortName for the tab's legend and
:1876 for tooltip text, and both want it.
Confirm in a browser before merging a change. 30px at 1280 is comfortable but
not enormous, and the longest roster name may grow. This is the same gate the
original work used, and it is exactly the kind of question source-reading gets
wrong.
Found during the whole-branch review of the nof1 board frame work.
Surfaced by the whole-branch review of #382.
- Dominant language
- Python
- Stars
- 767
- Forks
- 156
- Avg merge
- 22h 57m
- Merged PRs (30d)
- 84
Getting set up
- Ships a Dockerfile or Docker Compose file
- No pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Open-Finance-Lab/AgenticTrading
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
Open-Finance-Lab/AgenticTrading#663 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Open-Finance-Lab/AgenticTrading#661 ·
Maintainers usually reply within 1 day
-
fix(llm): a non-ASCII execution handoff raises UnicodeEncodeError instead of ExecutionHandoffErrorPossibly taken @subidhkhanal claimed this 3 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Open-Finance-Lab/AgenticTrading#659 ·
Maintainers usually reply within 1 day
-
fix(backtests): an LLM action with trailing whitespace ("buy ") is silently droppedPossibly taken @subidhkhanal claimed this 3 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
Open-Finance-Lab/AgenticTrading#658 ·
Maintainers usually reply within 1 day
-
fix(llm): Gemini adapter drops thinking tokens from the output countPossibly taken @subidhkhanal claimed this 3 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Open-Finance-Lab/AgenticTrading#657 ·
Maintainers usually reply within 1 day
All issues in Open-Finance-Lab/AgenticTrading
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100
yzhao062/awesome-auditable-ai#45 ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
NVIDIA/flare-local-inference#90 ·
Maintainers usually reply within 1 day
-
area/streaming comp/gateway P2 platform/telegram type/bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
NousResearch/hermes-agent#144897 ·
Maintainers usually reply within 1 day
-
request-theme
Difficulty 1/5 Under an hour Newbie friendliness 66/100
LizardByte/ThemerrDB#9575 ·
Maintainers usually reply within 1 day