Skip to content

UI: pódio solo mostra quadrados vazios/quebrados (adaptar Results a < 3 jogadores · §III.7) #11

Closed

Description

@caioross

Contexto

Feedback da persona O Iniciante (discussion #9, detalhe visual final, jogado em produção solo): "no fim da partida solo, os dois quadrados do pódio (2º/3º) ficam vazios/escuros — parecem espaços quebrados." É um anti-clímax no pico emocional da tela de resultado, e todo jogador solo bate nisso.

Causa (Results.tsx:61-68): o pódio renderiza sempre 3 colunas fixas [1,0,2]; quando podium[idx] é undefined (menos de 3 jogadores), cai no fallback if (!p) return <div className="card" style={{height}} /> — um retângulo escuro vazio. Com 1 jogador, sobram dois cards vazios; com 2, sobra um.

Escopo (1 fatia · §III.7 Results/Pódio)

Adaptar a tela de resultado a ranked.length < 3:

  • Solo (1 jogador): não mostrar pódio de 3 lugares com buracos — dar um resultado "herói" centrado para o único corredor (medalha 🥇 + stats), sem placeholders vazios.
  • 2 jogadores: pódio de 2 lugares (sem o card vazio do 3º).
  • 3+: comportamento atual, intacto.

Critérios de aceitação (verificáveis)

  • Partida solo → tela de resultado sem nenhum card vazio/escuro; o único jogador aparece com destaque claro (medalha + WPM/precisão/erros/tempo).
  • Partida com 2 jogadores → sem card vazio do 3º lugar.
  • Partida com 3+ jogadores → layout de pódio inalterado (sem regressão visual).
  • A lista completa (ranked.map, Results.tsx:121) e o botão "ver ranking global" continuam funcionando.
  • prefers-reduced-motion respeitado (sem novas animações que ignorem o gate); pnpm typecheck + pnpm build verdes.

Dica de abordagem

Ramificar por ranked.length antes do bloco do pódio (Results.tsx:60). Para solo, um componente/branch de "resultado único" reaproveitando o card de 1º lugar centralizado. Para 2, montar o array de colunas dinamicamente em vez do fixo [1,0,2]. Coerência de tokens/springs com o resto da tela (§I motion).

Origem: feedback da persona em #9. Referência de spec: docs/UI-AAA-OVERHAUL.md §III.7 (Results / Pódio).

Activity

  1. added
    P2Prioridade normal
    area:uiInterface, design system, animação, game feel
    em-resolucaoClaim: um Resolvedor está trabalhando nisto
    and removed
    em-resolucaoClaim: um Resolvedor está trabalhando nisto
    on Jul 8, 2026
  2. caioross commented on Jul 12, 2026

    @caioross
    OwnerAuthor

    Resolvido em #26. Results agora ramifica por ranked.length: solo ganha card herói centrado (medalha + WPM/precisão/erros/tempo, sem placeholders vazios), dupla mostra pódio de 2 colunas, 3+ fica inalterado. Animações novas respeitam prefers-reduced-motion via useReducedMotion(). Gate verde (typecheck+build+validate-metrics 24/24+validate-persistence 33/33). Sem parecer do Conselho nesta issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Prioridade normalarea:uiInterface, design system, animação, game feel

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions