Pular para o conteúdo principal
Modular Development Style · Inventario de Artefatos

Sistema de Resultados de Campeonatos (Chronosat)

Tudo que precisa existir e como cada item deve ser

Publicado em 01 de julho de 2026 Modulareasy · modulareasy.com/mds
Artefatos provisionados ...
Marque cada artefato conforme for criado; o progresso é salvo e compartilhado.

Sistema de Resultados de Campeonatos (Chronosat): Inventário de Artefatos

CampoValor
ProjetoSistema de Resultados de Campeonatos (integração Chronosat)
ClienteSertões
Agência / AutorModulareasy
DocumentoInventário de Artefatos (companheiro do DRS)
Data de revisão2026-07-06

Documentos da família

Este é o registro de completude: tudo que precisa existir para o sistema funcionar (telas, integrações, entidades, configurações, infraestrutura, mídia) e, para cada item, a ficha do que ele deve ser. Cada artefato aponta o requisito (RF) e a tarefa do Roadmap que o cria; se a tarefa está pronta mas o artefato não bate com a ficha, algo falta. A ordem de construção está no Roadmap; aqui está a lista do que provisionar.

Como usar

Marque um artefato quando ele existir E bater com a Especificação. Cada cartão traz Para que serve, Relacionado com (RF e tarefa do Roadmap), Onde fica e Especificação (a ficha implementável). Fichas grandes (o conector Chronosat e as telas) vivem nos apêndices do DRS e o cartão referencia; fichas pequenas ficam inline.

Redesenho multisite (v2.0): o motor é único e serve N sites por vertical, por configuração (ADR-010), administrados por um painel único (ADR-011). O banco não guarda apenas configuração: guarda também o estado mais recente dos dados de cronometragem de cada evento (RF-INGEST-005), com o payload bruto preservado (ADR-012). A página nunca lê a Chronosat direto, sempre o banco.
Estado do provisionamento (2026-07-07, S83). Vertical Kitesurf no ar (F6-01): quarta vertical criada só por configuração pelo painel (logo próprio por upload, cor verde #88BD23, regra de tripulação solo, home e página de evento próprias); a regra solo exibe um único atleta por competidor na tabela, no pódio e no modal (ART-SCR-01/02/03 exercitados numa 4ª identidade, sem alteração de código), e as modalidades Kite e Wing aparecem com suas próprias categorias, lidas dinamicamente, com dados fictícios de demonstração (a métrica por pontos do Kite e a validação com dado real de terceiros são F6-02). A vertical MTB (F5-01, dupla, rosa #E40E7F) e as anteriores seguem sem regressão. Infraestrutura (F0), motor (F1), site da Series (F2) e painel (F3, incluindo super admin F3-13 a F3-17) completos e no ar. Fase F4 concluída no que é autônomo: múltiplos eventos por vertical (F4-01), Sertões Petrobras por configuração (F4-02, upload de logo/capa por magic-bytes servido em runtime), home global enxuta (ART-SCR-04, F4-03) e endurecimento para o pico ao vivo (F4-05). Prontidão F5-GATE (Bike/dupla) e F6-GATE (Kite/solo e divergência por pontos) já absorvem o primeiro pacote real de cada esporte, com armazenamento não-bloqueante e tabela genérica sinalizada na divergência (ADR-012), delta de produção zero. Fronteiras declaradas, ainda não entregues: a validação com o primeiro pacote de dados REAIS da Bike (F5-02) e do Kite (F6-02, que também traz a métrica por pontos e os rótulos de coluna próprios via adaptador ADR-012) e a publicação no subdomínio com vínculo a partir do site institucional (F4-04, adiado por decisão do cliente para o fim do projeto). Ocultação por origem (RF-REGRA-006), LIGADA (F2-14, S82): a regra de ocultação por origem (_status="O"), pronta na biblioteca desde F2-01, agora está ligada nas rotas públicas (pages.ts): o competidor oculto na origem não aparece na página pública (pódio, tabela, contador, busca, modais), lendo tanto o crews quanto o racetimes; smoke visual real confirmou. Estendida à API interna de leitura em F2-15 (S83): os endpoints públicos da API (/api/events) também não expõem o competidor oculto (o detalhe dele responde não encontrado; o /meta não lista competidor), com o DRS ampliado e republicado. Item de polish mobile conhecido, system-wide, não bloqueia nenhuma fatia: overflow horizontal no mobile do base.css compartilhado (presente também no mockup aprovado); a corrigir num ciclo dedicado.

Tipos de artefato

TipoContagemOnde vivem
Serviço / infraestrutura (ART-INFRA)3Servidor dedicado, borda, cache
API / integração (ART-INT)3Proxy de leitura da Chronosat e os dois envios de medição
Conector / fonte de dados (ART-CONN)2Conector Chronosat de resultados e de parciais (ficha no Ap.1 do DRS)
Tela / página (ART-SCR)11Home da vertical, home global, página pública do evento, painel de gestão, gestão de contas, auditoria, monitor de status das páginas e textos do site
Menu / navegação (ART-NAV)1Navegação do painel
Entidade / tabela (ART-ENT)12Banco (config das verticais/eventos, estado mais recente dos dados, contas de usuário, auditoria e desvios de textos do site)
Parâmetro de configuração (ART-CFG)9Painel do operador, config e catálogo de textos do site
Env var / segredo (ART-ENVV)4Configuração do servidor e da borda
Asset / mídia (ART-MEDIA)1Marcas e cores das verticais
Documento / PDF (ART-DOC)1PDFs oficiais geridos pelo operador
Papel / permissão (ART-ACS)2Operador da Sertões e acesso às telas de medição
Rotina / job (ART-JOB)2Limpeza diária da série de acessos e importação dos registros do servidor web
Conteúdo público (ART-CONT)1Aviso de medição no rodapé, via catálogo de textos

Serviço e infraestrutura (ART-INFRA)


API e integração (ART-INT)



Conector e fonte de dados (ART-CONN)

Tolerância de esquema (ADR-012): o payload bruto é sempre preservado em DADOS_EVENTO exatamente como veio, e a normalização só acontece na exibição, nunca na escrita. Campos seriados (ssX, IX, posIX) são reconhecidos por padrão de nome em qualquer quantidade, sem lista fixa. Um campo desconhecido é ignorado na tela mas preservado no banco; um campo ausente apenas omite o elemento correspondente na tela, sem quebrar a página. Se um pacote vier estruturalmente diferente do contrato conhecido (ex.: uma vertical nova com modelo de dados distinto), o teste de conexão do painel (RF-PAINEL-003) aponta ao operador exatamente o que divergiu, o dado é armazenado do mesmo jeito, e a página exibe uma tabela genérica sinalizada do que veio, até um adaptador específico e contido entrar no módulo de ingestão, sem tocar o resto do sistema.



Telas e páginas (ART-SCR)




Item de menuDestinoVisível paraOrdem
CampeonatosLista de campeonatosAdministrador e operador1
Novo campeonatoAssistente passo 1Administrador e operador2
Evento retroativoAssistente passo 1 (modo retroativo)Administrador e operador3
VerticaisCadastro de verticaisAdministrador e operador4
ContasGestão de contas (ART-SCR-05)Só administrador5
AuditoriaLog de auditoria (ART-SCR-06)Só administrador6
Status das páginasSitemap e monitor de status (ART-SCR-07)Só administrador7

Nenhum item é visível ao público; toda rota do painel exige sessão autenticada. Os itens Contas, Auditoria e Status das páginas só aparecem para o papel administrador. Ações de estado, congelar e arquivar, PDFs e ocultar competidor abrem a partir do campeonato na lista, não como itens de topo.


Entidades (ART-ENT)

O banco guarda a configuração das verticais e dos eventos E o estado mais recente dos dados de cronometragem de cada evento: cada leitura bem-sucedida da Chronosat é gravada em DADOS_EVENTO por cima da anterior (RF-INGEST-005), com o payload bruto preservado. O banco é a fonte de verdade das páginas públicas, desde o primeiro minuto de um evento ao vivo; ao encerrar, o estado salvo em DADOS_EVENTO é apenas marcado como final (o campo estado de EVENTO registra o encerramento, não existe cópia separada de congelamento). Diagrama relacional completo no bloco 5 (Modelo de Dados) do DRS.

Enum regra_tripulacao (como os nomes da tripulação aparecem em tabela, pódio e modal):

ValorSignificadoVertical(is)
piloto_navegadorPiloto em destaque e navegador, no formato "PILOTO (UF) \NAVEGADOR (UF)"Rally (Series, Petrobras)
duplaDupla de competidores, os dois nomes em negrito, sem hierarquia entre elesMTB (Bike)
soloUm único atleta, sem segundo nomeKitesurf

As quatro verticais iniciais (linhas seed desta entidade):

slugnomecor_destaqueregra_tripulacaoObservação
seriesSertões SeriesLaranja oficial E96409piloto_navegadorCor de fundo do logotipo oficial 2026 (Ap.4 do DRS)
petrobrasSertões PetrobrasLaranja oficial E96409 (o mesmo da Series; a marca própria distingue)piloto_navegadorVertical separada da Series (logos, participantes e patrocinadores próprios); RF-CONFIG-004
mtbSertões MTBRosa oficial E40E7FduplaCor de fundo do logotipo oficial 2026 (Ap.4 do DRS)
kitesurfSertões KitesurfVerde oficial 88BD23soloCor de fundo do logotipo oficial 2026 (Ap.4 do DRS)



Parâmetros de configuração (ART-CFG)

ParâmetroO que controlaTipoDefaultQuem editaOnde editaEfeito ao mudar
cor_destaqueCor de realce, pódio, abas e estados ativosTexto (cor)Series E96409OperadorTela de verticaisImediato na página pública
marcaLogo/identidade da verticalAssetMarca da verticalOperadorTela de verticaisImediato
hero_tituloTítulo da capa da home da vertical (ART-SCR-03)TextoNome da verticalOperadorTela de verticaisImediato
hero_subtituloSubtítulo da capa da home da verticalTextoVazioOperadorTela de verticaisImediato
hero_imagemImagem de fundo/capa da home da verticalAssetVazio (usa fundo padrão)OperadorTela de verticaisImediato
rotulo_modalidadeRótulo da hierarquia usado na hero e nos filtrosTexto"Modalidade"OperadorTela de verticaisImediato
rotulo_categoriaRótulo da hierarquia usado nos filtrosTexto"Categoria"OperadorTela de verticaisImediato
rotulo_trechoRótulo da hierarquia usado na faixa de etapasTexto"Etapa"OperadorTela de verticaisImediato
regra_tripulacaoComo os nomes aparecem em tabela, pódio e modal (piloto_navegador \dupla \solo)Enumpiloto_navegadorOperadorTela de verticaisImediato na página pública
ordem_homePosição da vertical na home global (ART-SCR-04)NúmeroOrdem de criaçãoOperadorTela de verticaisImediato
nova verticalAdicionar vertical sem códigoAção(n/a)OperadorTela de verticaisTorna-se selecionável no assistente e aparece na home global

Auditado: não exigido nesta entrega. Cores e logos de cada vertical (incluindo Petrobras) são extraídos da midiateca dos sites da Sertões na implementação (fonte em ART-MEDIA-01), sem depender de envio do cliente. As quatro verticais iniciais e seus valores de seed estão em ART-ENT-01.


ParâmetroO que controlaTipoDefaultQuem editaOnde editaEfeito ao mudar
analise.ligadoInjeta ou não a etiqueta da plataforma de análise nas páginas públicasInterruptorDesligadoAdministradorTela de integraçõesImediato, sem reinício
analise.identificadorIdentificador público do fluxo de dados da plataforma de análiseTextoVazioAdministradorTela de integraçõesImediato; vazio não injeta
anuncios.ligadoInjeta ou não o pixel da plataforma de anúncios nas páginas públicasInterruptorDesligadoAdministradorTela de integraçõesImediato, sem reinício
anuncios.identificadorIdentificador público do conjunto de dados da plataforma de anúnciosTextoVazioAdministradorTela de integraçõesImediato; vazio não injeta
anuncios.credencialCredencial do envio da visualização pelo servidorSegredo, escrita apenasVazioAdministradorTela de integraçõesImediato; vazio desliga só o envio pelo servidor, o do navegador continua
enviar evento de testeManda ao destino um evento marcado como teste, para conferir a chegadaAção(n/a)AdministradorTela de integraçõesNenhum efeito no público; registra na auditoria

Auditado: sim, toda gravação e todo envio de teste (RF-PAINEL-012). A credencial nunca é devolvida por leitura do sistema, nunca é escrita em arquivo do sistema e nunca aparece em registro de auditoria; a tela exibe apenas máscara, com o botão de ver o que foi digitado no campo de entrada. O operador não alcança esta tela.

ParâmetroO que controlaTipoDefaultQuem editaEfeito ao mudar
registro ligadoLiga e desliga o registro interno de acessosInterruptorLigadoSustentaçãoPróximo acesso; desligado, nenhuma linha nasce
intervalo de descargaTempo máximo entre descargas da filaSegundos5SustentaçãoPróxima descarga
tamanho do loteNúmero de registros que força a descarga antes do intervaloNúmero200SustentaçãoPróxima descarga
teto da filaNúmero máximo de registros em memória antes de descartarNúmero10000SustentaçãoImediato; ao atingir, descarta e conta
janela de retençãoIdade máxima de um registro na série; zero = sem prazo, nunca removeMeses0 (sem prazo)SustentaçãoPróxima limpeza diária
janela do agoraTamanho da janela do bloco de tempo presenteMinutos5SustentaçãoPróxima abertura da tela

Auditado: não exigido. O contador de descarte da fila é exposto no resumo do evento da tela de audiência e na verificação de saúde, para que perda de registro seja número conhecido e não silêncio.


Env vars e segredos (ART-ENVV)



Assets e mídia (ART-MEDIA)


Documentos oficiais (ART-DOC)


Rotinas e jobs (ART-JOB)


Conteúdo público (ART-CONT)


Papel e permissão (ART-ACS)

CapabilityOperadorAdministradorEscopo
Acessar o painelSimSimTodo o painel, todas as verticais
Cadastrar e publicar campeonatoSimSimTodas as verticais
Alternar estado (ao vivo / encerrado)SimSimTodos os eventos, todas as verticais
Encerrar evento (para de buscar a origem, RF-PAINEL-009)SimSimTodos os eventos, todas as verticais
Criar evento retroativo (edição passada)SimSimTodas as verticais
Gerir PDFs oficiais (link e upload)SimSimTodos os eventos, todas as verticais
Ocultar e reexibir competidorSimSimTodos os eventos, todas as verticais
Editar perfil de vertical (cor, marca, home, rótulos, regra de tripulação, ordem, nova vertical)SimSimTodas as verticais
Gerir contas de usuário (criar, editar, desativar/reativar, definir papel, redefinir senha)NãoSimTodas as contas
Consultar a auditoriaNãoSimTodo o log
Acessar dados da Chronosat diretoNãoNão(só via proxy do servidor)

Quem configura os papéis: a sustentação (Modulareasy) provisiona as contas de administrador iniciais; a partir daí o próprio administrador cria e mantém as demais contas, inclusive as de operador. O público não tem papel autenticado (só consome). O operador é perfil não técnico, do time da Sertões; o painel é desenhado para ele, com apoio da Modulareasy quando preciso. O administrador é a equipe da Modulareasy que opera o sistema para a Sertões, com acesso declarado e auditável (RF-PAINEL-012).



Fora deste inventário

Página de campeões históricos: incremento futuro (DRS, J.1 Evolução), não faz parte desta entrega e não tem ficha de artefato neste Inventário. Entra quando o conteúdo (planilha de campeões por vertical fornecida pela Sertões) chegar, sem mudança de arquitetura; nesse momento ganha seu próprio ART-SCR e, se necessário, ART-ENT.

Documento Inventário de Artefatos: Resultados Chronosat
Metodologia MDS · Modular Development Style · 15 blocos / 86 campos
Publicado por Modulareasy
Site modulareasy.com/metodologias/mds