Pular para o conteúdo principal

Status: Approved · v2 · SPEC-UX-PUBLIC-CHAMPIONSHIP-001

depends_on: SPEC-DOMAIN-CHAMPIONSHIP-001

used_by: IS-MVP-01.4, IS-MVP-07.3, IS-MVP-07.5

Página pública do campeonato

Página pública deve funcionar como centro confiável de uma edição, não apenas banner e tabela simplificada.

Objetivo

Página pública deve funcionar como centro confiável de uma edição, não apenas banner e tabela simplificada.

Pontos de entrada

  • Busca.
  • Partidas.
  • Times inscritos.
  • Feed/cards.
  • Território.

Hierarquia da tela

  1. Hero com identidade, edição ativa, território e status.
  2. Navegação interna: Visão geral, Jogos, Classificação, Grupos/Chave, Times, Artilharia, Disciplina, Regulamento.
  3. Próximos jogos e resultados recentes.
  4. Fase atual e progressão.
  5. Classificação/grupos com critérios.
  6. Times/categorias inscritos.
  7. Artilharia e disciplina.
  8. Regulamento e PDF.
  9. Feed oficial/galeria.
  10. Compartilhar e denunciar.

Componentes e comportamento

Edition Selector

Permite navegar edições anteriores sem misturar stats.

Standings

Tabela responsiva com posição, jogos, pontos e critérios. Linhas têm links para time.

Bracket/Groups

Visual controlado e legível; fallback em lista no mobile.

Regulation

Resumo estruturado e texto integral; alterações pós-lock exibem aviso/versionamento.

Registration Status

Janela e modo visíveis; CTA para gestor de time quando elegível.

Publication Status

Draft não possui página pública; suspended/cancelled explicam situação.

Ações do usuário

AçãoPré-condiçãoResultadoFalha/alternativa
Solicitar inscriçãoGestor de timePedido pendingJanela/modo/elegibilidade
Aceitar conviteGestor de timeInscrição aprovada/pendingPrazo
Abrir regulamentoPúblicoTela/documentoPDF indisponível usa texto
CompartilharPúblicoCard/linkFallback
Abrir gestãoMembershipPainel403

Estados obrigatórios

EstadoRepresentaçãoAção disponível
Published pre-registrationInformação e edição
Registration openCTA e prazoInscrever
In progressFase/jogos/classificação
FinishedCampeão e histórico
Cancelled/suspendedBanner
No fixturesExplica geração pendente
Loading/partial/errorSkeleton por abaRetry

Autenticação e permissões

  • Leitura pública após publicação.
  • Inscrição só por gestor de time.
  • Gestão privada e financeira não aparece.
  • Regulamento público versionado.

Responsividade

  • Desktop pode usar tabela e bracket amplos.
  • Mobile usa tabs scrolláveis, cards de classificação e bracket simplificado.
  • Regulamento mantém boa leitura.

Acessibilidade

  • Tabelas com headers.
  • Bracket possui alternativa textual.
  • Tabs teclado/foco.
  • Status e fases em texto.

Eventos de produto e observabilidade

  • championship_viewed
  • edition_changed
  • standings_opened
  • registration_started
  • regulation_opened
  • championship_shared

Dados e endpoints

  • GET /championships/:slug.
  • GET editions/standings/fixtures/top-scorers/discipline/regulation.
  • POST registrations.

Critérios de aceite

  • Edição não se mistura.
  • Todas as áreas competitivas previstas.
  • Draft não público.
  • Regulamento acessível.
  • Mobile não depende de tabela larga.

Pós-MVP

  • Bilheteria, sponsors, premiação e sorteios.

Decisões registradas

  • Campeonato é entidade independente.
  • Edição é o contexto operacional.
  • Publicação paga precede página pública.

Machine summary

spec: SPEC-UX-PUBLIC-CHAMPIONSHIP-001
screen_or_flow: Página pública do campeonato
required_states:
- loading
- success
- empty
- error
must_use:
- contracts
- service
- hook
- design_tokens
must_not:
- direct_fetch
- direct_fixture_import
- hardcoded_brand_colors