Pular para o conteúdo principal
Modular Development Style · Roadmap de Implementacao

Sistema de Resultados de Campeonatos (Chronosat)

Em que ordem construir e como verificar

Publicado em 01 de julho de 2026 Modulareasy · modulareasy.com/mds
Progresso da implementação ...
Planejamento 0%
Construção 0%
Testes 0%
Progresso geral: 0%
Clique no quadradinho para marcar como feito. O progresso é salvo automaticamente e compartilhado.

Sistema de Resultados de Campeonatos (Chronosat): Roadmap de Implementação

CampoValor
ProjetoSistema de Resultados de Campeonatos (integração Chronosat)
ClienteSertões
Agência / AutorModulareasy
DocumentoRoadmap de Implementação (companheiro do DRS)
Data de revisão2026-09-18

Documentos da família

Este é o roteiro de construção do sistema, em ordem, com verificação primeiro: para cada tarefa, o observável que prova que ela está pronta é declarado antes do como construir. A ordem vem das ondas de entrega do DRS (bloco 9, J.1) e de suas dependências. Cada tarefa cobre um ou mais requisitos funcionais (RF) do DRS.
Estado da implementação (2026-07-07, S84). Fase F6 em andamento, vertical Kitesurf no ar por configuração (F6-01): a tabela, o pódio e o modal de um evento de Kitesurf (verde #88BD23, logo próprio) exibem um único atleta por competidor (regra de tripulação solo), e as modalidades Kite e Wing aparecem com suas próprias categorias, lidas dinamicamente, tudo por configuração, sem alteração de código, com dados fictícios de demonstração (mesmo padrão das demais verticais fora a Series). As verticais Series (piloto e navegador), Petrobras (encerrada) e MTB (dupla) seguem sem regressão. Fases F0 (servidor e SSL), F1 (motor de leitura e persistência), F2 (site público completo da Series), F3 (painel único, incluindo o super admin multiusuário F3-13 a F3-17) e F4 (no que é autônomo: múltiplos eventos por vertical F4-01, Petrobras por configuração F4-02, home global F4-03 e endurecimento de pico F4-05) estão completas. Os testes de 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). 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), ambas dependentes do dado real de terceiros chegar, e, no caso do Kite, a exibição da classificação por PONTOS com os rótulos de coluna próprios (Atleta/Pontos), que é o adaptador contido de métrica (ADR-012) e entra junto do dado real; 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, quando o sistema inteiro estiver validado). Ocultação por origem (RF-REGRA-006), LIGADA (F2-14, S82): competidor marcado como oculto na origem pela Chronosat (_status="O") agora não aparece na página pública (pódio, tabela, contador, busca, modais e recortes por categoria e trecho), lendo tanto o crews quanto o racetimes; smoke visual real com um competidor oculto confirmou a remoção (líder some do pódio e da tabela, contador 27 para 26), sem regressão nos demais, e o operador continua vendo o competidor no painel. Estendida à API interna de leitura em F2-15 (S83): o competidor oculto na origem também não aparece nos endpoints públicos da API (/api/events; o detalhe dele responde não encontrado), e o /meta não lista competidor. O DRS foi ampliado e republicado (RF-REGRA-006 cobre página pública e API interna de leitura). Home global agora 100% conforme (F4-03 / RF-PUB-016, S84): a vertical Series passou a exibir seu logotipo quadrado laranja no card da raiz, como as demais verticais (antes herdava o logotipo genérico do Sertões): as quatro verticais aparecem com a própria marca oficial; smoke visual real (desktop e celular) confirmou os quatro tiles coloridos consistentes e o cabeçalho da Series sem regressão. Correção de diagnóstico (S84): NÃO há overflow horizontal no celular, verificado com emulação real de dispositivo (360 e 390 px) na home global e nas páginas de evento; o alerta anterior de "overflow mobile system-wide" vinha de captura por tamanho de janela, que dá falso positivo em páginas com viewport responsivo. Polish real remanescente, de nicho, não bloqueia nenhuma fatia: numa faixa estreita de tablet (por volta de 768 px) a última coluna da tabela de classificação fica cortada porque o contêiner da tabela recorta o excedente em vez de permitir rolagem horizontal, a corrigir em ciclo dedicado de polish do base.css (recorte para rolagem no contêiner da tabela). Correção e ampliação pontuais (2026-09-17): o filtro de categoria agora vale dentro do recorte de trecho (F2-16, RF-PUB-004), e o grupo Parciais passou a ser uma coluna ocultável por evento junto das demais dez (F3-18, RF-PAINEL-014). Onda AUD entregue e provada em produção (2026-09-19), audiência: 20 de 20 cartões. O sistema foi usado ao vivo no primeiro evento grande e ninguém soube dizer quantas pessoas acompanharam, porque ele não mede nada: o retrato de partida está no cartão AUD-00, com o placar fechado (3 tipos de página pública, 0 com medição, 3 sem). O DRS foi ampliado antes de qualquer linha de código, com o módulo MEDIR (RF-MEDIR-001 a 017), sete decisões de arquitetura novas (ADR-013 a ADR-019), a série de acessos no modelo de dados (E.4) e o catálogo da medição (Ap.6). A onda tem duas metades: a medição externa, que alimenta as plataformas do cliente, e o painel de audiência dentro da própria ferramenta, que é a verdade operacional e não depende de consentimento nem de bloqueador. Nenhum identificador e nenhuma credencial de medição vivem em código: quem liga é o administrador, pela tela nova de integrações (AUD-01), e por isso ela é o primeiro cartão da fila. Reconciliação do gate da onda (2026-09-18, mesma data): sete pontos de divergência entre o documento e o código foram corrigidos antes de a onda abrir, e o mais grave era o critério do próprio retrato: "carrega recurso de terceiro" devolveria 3 de 3, porque as páginas públicas carregam a tipografia oficial de domínio externo desde a construção do site; o critério passou a ser "dispara chamada de medição ou grava linha na série", medido pelos dois lados. Também mudaram: a exclusão do que não é audiência passou a ser por origem da requisição e nunca por rota (a lista do monitor inclui páginas públicas reais); a série ganhou a rota e a proveniência da linha; a repetibilidade da importação passou a ser por proveniência e não por identificador de visitante; o envio pelo servidor declarou o dado de correspondência que a plataforma exige; o momento da prova é nulo nas homes; e a contagem do catálogo de textos foi corrigida para 39 chaves, 41 com as duas do aviso de medição (o texto e o endereço da política, confirmado no ADR-019). Prova de fechamento (2026-09-19, main 3a2f16e, gates plano aprovado / qa aprovado / revisão aprovada): o par invertido do retrato de AUD-00 fechou, 3 páginas medidas e 0 não medidas, com etiqueta e pixel únicos em cada uma; os sete eventos de interação chegaram com os nomes exatos no relatório de tempo real do GA4 (troca_de_trecho, troca_de_modalidade, troca_de_categoria, busca_de_competidor, parciais_abertas, documento_oficial_aberto, atualizacao_ao_vivo); a CAPI aceitou 2 PageView na condição "Servidor, Processado" com identificador de evento no Eventos de Teste da Meta; a série gravou 696 acessos na primeira hora sem descarte; a importação do registro do servidor absorveu 51.248 linhas de 10 a 18 de setembro de forma repetível (reimportar o mesmo arquivo não soma linha); e a carga de prova ficou dentro do limite do RNF-PERF-003 (p95 1586 ms contra 2191 ms de referência, 0 erro em 531 pedidos).
Atualização de 2026-09-19, duas correções medidas. (1) O ADR-019 deixou de ser pendência: o cliente publicou a sua política de privacidade, com seção própria sobre o Sistema de Resultados declarando a medição anônima e o uso da mesma propriedade de análise e do mesmo pixel do site institucional; o ADR passou a confirmado, com endereço, controlador e data, e o aviso do rodapé aponta para ela. A confirmação também dá respaldo público ao ADR-014 e ao RNF-PRIV-001. (2) O AUD-17 fechou (2026-09-19): o gate de QA provou o H1 inteiro em produção, as duas metades positivas (valor de fábrica, vínculo para a política) e as duas negativas (esvaziar a chave do texto remove o aviso inteiro, esvaziar só a do endereço mantém o aviso sem vínculo), mais a ausência confirmada em toda tela do painel. O cartão foi marcado com o H1 completo. Essa medição corrigiu, de quebra, um número deste próprio roadmap: o aviso virou duas chaves e não uma, então o grupo de cabeçalho e rodapé foi de 12 a 14 e o catálogo de 39 a 41, e não a 40 como estava escrito aqui ontem. As fases F0 a F4 seguem completas, F5-02 e F6-02 seguem dependentes do primeiro pacote real de terceiros, e F4-04 segue adiado por decisão do cliente.

Como usar

Cada tarefa é um cartão com um código curto e estável (ex.: F1-03), o RF que cobre, o que implementar, como verificar (o teste, declarado primeiro) e o critério de aceite H1. Marque a tarefa como feita quando o teste passar. As fases são sequenciais; dentro de uma fase, siga a ordem dos cartões. Ao fim de cada fase há uma Definição de Pronto: a fase só fecha quando todos os seus critérios estão verdes.

Mapa de cobertura

FaseOnda do DRSMódulo do DRSRFs cobertos
F0 InfraestruturaPreparaçãoArquitetura (G), Operação (K)ADR-006, ADR-007, RNF-ISO-001, RNF-ESC-001
F1 Motor de leitura e persistênciaOnda 1INGEST, APIRF-INGEST-001 a 005, RF-API-001 a 005, ADR-012
F2 Página pública e site SeriesOnda 2PUB, REGRARF-PUB-001 a 015, RF-REGRA-001 a 006
F3 Painel único de gestão (com contas nominais)Onda 3PAINEL, CONFIGRF-PAINEL-001 a 013, RF-CONFIG-001 a 003, RF-CONFIG-005, RNF-ARQ-001, RNF-SEG-002 a 005
F4 Petrobras por configuração e home globalOnda 4CONFIG, PUB, bordaRF-CONFIG-002, RF-CONFIG-004, RF-PUB-016, RNF-COMP-001, RNF-PERF-001, RNF-PERF-002, RNF-ESC-001
F5 Vertical MTB (Bike)Onda 5CONFIG, PUBRF-CONFIG-001 (perfil dupla), validação do primeiro pacote real
F6 Vertical KitesurfOnda 6CONFIG, PUBRF-CONFIG-001 (perfil solo), validação do primeiro pacote real
PET Plantão do Petrobras 2026Evento ao vivoPUB, REGRA, INGEST, API, PAINELRF-PUB-001, RF-PUB-004, RF-PUB-005, RF-PUB-014, RF-REGRA-001, RF-REGRA-002, RF-REGRA-004, RF-INGEST-001, RF-INGEST-003, RF-INGEST-005, RF-API-001, RF-API-002, RF-API-005, RF-PAINEL-013, ADR-012
Planejamento (Fase 0)PreparaçãoElicitação, especificação, companheiros, validação, aprovaçãoPré-concluída na aprovação do DRS
M Mockup NavegávelPreparaçãoReferência visual de todo o sistema (Ap.4, Ap.5)Concluída: mockup completo publicado e aprovado (guia do desenvolvimento)
AUD AudiênciaOnda AUDMEDIR, PAINEL, PUB, CONFIGRF-MEDIR-001 a 017, RF-PAINEL-012, RF-CONFIG-006, RNF-PERF-003, RNF-PRIV-001, RNF-SEG-006, ADR-013 a ADR-019

Planejamento

Concluída na aprovação do DRS. Vale 40% do projeto (seção Planejamento). Estas etapas cobrem tudo que aconteceu antes de codar.

0.1 Entendimento e Elicitação

0.2 Especificação (o DRS)

0.3 Documentos companheiros

0.4 Validação e Qualidade

0.5 Publicação e Aprovação


Fase M, Mockup Navegável (pós-Planejamento, gate de aprovação)

Dependência: DRS aprovado (Planejamento fechado). A construção (F0 em diante) não começa com esta fase aberta. Concluída em 2026-07-03: mockup completo publicado em modulareasy.com/sertoes/pagina-de-resultados e aprovado.
Definição de Pronto M: mockup completo no ar, aprovado, e vinculado no DRS como guia do desenvolvimento. CUMPRIDA.

Fase F0, Infraestrutura

Definição de Pronto F0: servidor isolado no ar com health check verde; domínio de resultados no ar com HTTPS e certificado válido (SSL terminado no próprio servidor), com redirecionamento de HTTP para HTTPS; nenhum recurso compartilhado com outros produtos.

Fase F1, Motor de leitura e persistência (Onda 1: INGEST e API)

Dependência: nenhuma além das URLs de um evento de referência (Rally do Jalapão). Esta fase entrega o motor único que sustenta todas as verticais.
Definição de Pronto F1: o proxy resolve CORS com cache e resiliência; cada leitura bem-sucedida fica persistida no banco e a página nunca depende da origem continuar no ar; o parser tolera campo desconhecido, campo ausente e parciais extras, e sinaliza divergência estrutural com fallback genérico; os cinco endpoints de leitura respondem com dados reais do evento de teste, servidos do banco; o cruzamento por numeral está validado contra os JSON reais.

Fase F2, Página pública e site da vertical Series (Onda 2: PUB e REGRA)

Dependência: Fase F1. As regras de interpretação (REGRA) são implementadas junto com a exibição, porque moldam o que a página mostra. Ficha completa das regras no Ap.2 do DRS. Esta fase entrega o primeiro site de vertical completo (Series), servindo de referência para F4, F5 e F6.
Definição de Pronto F2: o site da vertical Series reproduz o protótipo aprovado (Ap.5) em celular e desktop, com as seis regras de interpretação aplicadas, atualização automática ao vivo, identidade da vertical vinda da configuração (não fixa em código), a tripulação exibida pela regra da vertical, e a home da vertical funcionando como arquivo por ano; smoke visual real feito tela a tela.

Fase F3, Painel único de gestão (Onda 3: PAINEL e CONFIG)

Dependência: Fase F1. Esta fase entrega o painel que administra todas as verticais, e o perfil completo de vertical que F2 já consumia parcialmente (cor) passa a ser editável por inteiro. Inclui a sub-sequência de contas nominais com papel (F3-13 a F3-16), evolução do acesso de login único para administrador e operador nominais, com gestão de contas e auditoria.
Sub-sequência F3, contas nominais com papel (evolução do ADR-011). Estes quatro cartões trocam o "login único" (credencial única em configuração, entregue em F3-01) por contas nominais com papel, para a equipe da Modulareasy administrar o sistema de forma declarada e auditável. Vêm em ordem: primeiro a entidade e as contas iniciais (F3-13), depois a autenticação passa a ler da tabela e a carregar o papel (F3-14, que substitui a barreira de F3-01 sem removê-la), depois a tela de gestão de contas (F3-15) e a auditoria (F3-16). F3-14 depende de F3-13; F3-15 e F3-16 dependem de F3-14. Não têm dependência com F3-02 a F3-12 e podem ser priorizados como primeira fatia da fila.
Definição de Pronto F3: um operador não técnico cadastra e publica um campeonato sozinho pelo assistente de três passos (colando o bloco de URLs de uma vez, com extração e classificação automática), com teste de conexão que também sinaliza divergência estrutural, e opera estado, PDFs (link e upload, arquitetura aberta a outras entradas) e ocultação; encerrar é apenas parar de buscar a origem, porque cada leitura já ficou salva desde o início; cada evento tem endereço permanente por vertical, ano e evento; o perfil completo de cada vertical (cor, marca, capa, rótulos, regra de tripulação, ordem) é editável no painel. O acesso é por conta nominal com papel: administrador (equipe Modulareasy) e operador (equipe Sertões) entram cada um com a sua credencial; o administrador cria e mantém contas, define papel, redefine senha, desativa/reativa, e consulta o log de auditoria das ações sensíveis, tudo declarado e rastreável.

Fase F4, Vertical Petrobras por configuração e home global (Onda 4)

Dependência: Fases F2 e F3. Esta fase prova o modelo multisite (RF-CONFIG-004): uma vertical nova nasce só como configuração, sem tocar código. Se algo aqui exigir código além do perfil (RF-CONFIG-001) e do cadastro de evento, é um sinal de que F2/F3 embutiram algo fixo da Series que deveria estar na configuração, e o achado deve ser corrigido na fonte antes de prosseguir para F5.
Definição de Pronto F4: a vertical Petrobras nasce e opera só por configuração, sem alteração de código, provando o modelo multisite; a home global lista as verticais sem misturar dados entre elas; o subdomínio funciona de forma autônoma vinculado a partir do site institucional; o sistema aguenta o pico de acessos ao vivo com duas verticais simultâneas.

Fase F5, Vertical MTB, Bike (Onda 5)

Dependência: Fase F4 apenas. Nada é aguardado de terceiros: a construção usa os dados reais já em mãos (rally) e a vertical MTB é ativada quando o primeiro pacote real da Bike chegar, validado no próprio teste de conexão do cadastro. Risco real mapeado no DRS (J.1): a dupla de bikers pode vir com dois numerais (um por atleta) ou com estrutura de prova diferente do rally; a tolerância de esquema garante exibição útil imediata e o ajuste fino entra como adaptador contido.
Definição de Pronto F5: o primeiro pacote real da Bike foi validado no teste de conexão e seu resultado registrado (renderização plena no match, ou fallback útil mais adaptador contido na divergência); a vertical MTB opera por configuração com a regra de tripulação dupla; o smoke visual tela a tela passou com os dados reais de um evento de Bike.

Fase F6, Vertical Kitesurf (Onda 6)

Dependência: Fase F4 apenas. Nada é aguardado de terceiros: a vertical Kitesurf é ativada quando o primeiro pacote real do Kite chegar, validado no próprio teste de conexão do cadastro. Referência observada na página de resultados atual do kite da Sertões: classificação final por PONTOS somados por etapa (Geral mais Etapas 1 a 4), com divisões como Pro e Elite, Adventure Master e Jr, e Open; o acumulado do Kite tende a ser pontuação, não tempo, e o sistema exibe a métrica que o payload entregar (renderização orientada a dados, ADR-012).
Definição de Pronto F6: o primeiro pacote real do Kite foi validado no teste de conexão e seu resultado registrado (renderização plena no match, ou fallback útil mais adaptador contido na divergência, exibindo a métrica que o payload trouxer, pontos ou tempos); a vertical Kitesurf opera por configuração com a regra de tripulação solo e a hierarquia Kite/Wing; o smoke visual tela a tela passou com os dados reais de um evento de Kitesurf.

Onda PET, Plantão do Sertões Petrobras 2026 (evento ao vivo)

Nasceu durante o primeiro evento grande no ar (21 a 26 de agosto de 2026), com a cronometragem e a organização olhando a página em tempo real. Cada cartão aqui veio de um relato do cliente durante a prova, não de um planejamento prévio, por isso a onda é registrada depois, com os cartões já entregues, para que o roadmap continue sendo a verdade do que existe. Todos foram medidos no dado real do evento antes de qualquer linha ser escrita, e verificados no ar contra a tabela oficial da própria Chronosat. Três cartões (PET-05, PET-06, PET-07) trouxeram informação que a página nunca tinha exibido; os demais corrigiram exibição ou precisão. Nenhum exigiu mudança de arquitetura: todos entraram pelo motor único e valem para as quatro verticais.
Definição de Pronto da Onda PET: todos os cartões foram medidos no dado real do evento antes da implementação e conferidos no ar contra a tabela oficial da Chronosat; a suíte automatizada do motor passou inteira a cada entrega; e as duas dúvidas de contrato levantadas durante o plantão (significado do status da etapa e presença do horário de largada na geral) foram respondidas pela cronometragem e aplicadas.

Onda AUD, Audiência (medição do público)

Por que esta onda existe. O primeiro evento grande no ar (21 a 26 de agosto de 2026) foi acompanhado ao vivo pela organização e pela cronometragem, e ao fim ninguém soube dizer quantas pessoas acompanharam, porque o sistema não media nada e o registro do servidor web é descartado depois de poucos dias. A onda resolve isso por dois caminhos que não se substituem (DRS, ADR-013): a medição externa, que entrega os números às plataformas do cliente, e o registro interno, que é a verdade operacional e vira um painel de audiência dentro da própria ferramenta. Dependência: Ondas 2 e 3 do DRS (página pública e painel já existem). Ordem: os cartões estão na ordem de construção; AUD-01 vem antes de qualquer injeção porque nada pode ser ligado por código. Não altera arquitetura: tudo entra pelo motor único e vale para as quatro verticais.
Definição de Pronto da Onda AUD: o retrato de AUD-00 e a prova de AUD-19 usam o mesmo universo e o mesmo critério, e os dois placares fecham; as três páginas públicas medem e nenhuma tela do painel mede; os sete eventos chegam com os nomes exatos e com o parâmetro de site; a atualização ao vivo não produz visualização nova em destino algum; o painel de audiência responde por um evento real com todos os blocos do Ap.6 do DRS; a exportação fecha com a tela; a importação é repetível; a carga passa dentro do limite do RNF-PERF-003; e nenhum identificador ou credencial de medição existe em código.

Evoluções (fora da entrega inicial, sem mudança de arquitetura)

Não fazem parte das seis fases de construção; entram quando a dependência listada existir, não por calendário (DRS J.1, Evolução).
  • Fotos e bandeiras no pódio: a bandeira (UF de cada integrante) já vem nos dados da Chronosat e pode entrar como ajuste de exibição em qualquer fase a partir de F2; a foto depende de uma fonte de fotos (pré-cadastro de competidor associado a numeral ou nome, com automação de imagens), que ainda não existe.
  • Página de campeões históricos: uma página por vertical com os campeões de todas as edições, alimentada por conteúdo que a Sertões vai fornecer (planilha). Adiada por decisão do cliente; entra quando o conteúdo chegar, sem mudança de arquitetura.
Documento Roadmap de Implementação: Resultados Chronosat
Metodologia MDS · Modular Development Style · 15 blocos / 86 campos
Publicado por Modulareasy
Site modulareasy.com/metodologias/mds