Skip to main content
← Back to list
01Issue
BugOpenSwamp Club
AssigneesNone

Relationships

#1503 Profile score section blocks the render on a ClickHouse read

Opened by keeb · 8/2/2026

Split out of #1496, which fixed the leaderboard but deliberately left this.

What

routes/u/[username].tsx:168-173 awaits loadProfileScore inside its Promise.all, so the profile page's render is gated on a ClickHouse read. The leaderboard no longer works this way — #1496 made it render its frame and fill the boards in — and the profile is now the remaining surface where a slow ledger holds a page.

Everything else on the page (bio, badges, collectives, lab, extensions) is ready without it.

Why it was deferred rather than folded in

The benefit is unmeasured, and that is the actual work here. The score reads sit in a Promise.all alongside every other section, so deferring them only speeds the page if the score read is the long pole. If some Mongo read dominates that race, frame-first on the score section buys resilience but not speed — and the plan should say which.

So step one is to measure which read dominates routes/u/[username].tsx:168, not to start moving code.

Notes

  • routes/api/v1/users/[username]/score-history.ts exists; check whether it already returns the headline and breakdown the section needs or only the history series. That is the difference between wiring an existing endpoint and designing one.
  • The combat log on the same page is already a separate lazy request, so frame-first here would make the score section consistent with its neighbour rather than introducing a new pattern.
  • The pattern and its traps (one request, pending-is-not-empty, the asOf pin) are written up in CLAUDE.md under the Fresh section.
  • #1496 already removed the symptom this would have masked: board pressure can no longer blank the profile score, because the breakers are now split per read class.
02Bog Flow
OPENTRIAGEDIN PROGRESSSHIPPED

Open

8/2/2026, 7:35:00 PM

No activity in this phase yet.

03Sludge Pulse

Sign in to post a ripple.