Repository navigation
Disponibiliza meses incompletos nas extensões da API - #159
Merged
pitangainnovare merged 9 commits intoNov 8, 2026
Merged
pitangainnovare merged 9 commits into
pitangainnovare merged 9 commits into
Conversation
Centraliza o script sem alterar sua lógica para separar a agregação da resolução de cobertura.
Distingue lacunas de uso zero e testa marcadores inválidos antes de integrar as consultas.
Reutiliza os meses e dias confirmados na montagem das agregações para manter a paginação consistente.
Aplica a política de cobertura ao ranking e verifica a soma confirmada em páginas sucessivas.
Mantém totais e filtros da distribuição alinhados aos dias confirmados e amplia o teste compartilhado.
Conserva os metadados em CSV e XLSX para que resultados vazios não ocultem lacunas de cobertura.
Documenta a política e os metadados no esquema e verifica sua entrega numa requisição HTTP real.
Orienta consumidores sobre dados parciais sem confundir dias ausentes com uso zero.
Mostra os valores existentes de país e idioma sem aguardar todas as cargas, distinguindo cobertura informativa de filtro por dias.
6 of 14 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
O que esse PR faz?
Ranking e distribuição incluem dados parciais por padrão (
coverage_policy=allow_partial): dias confirmados nas consultas mensais e totais disponíveis nas consultas anuais de país/idioma. JSON, CSV e XLSX informam cobertura e avisos.strictexige cobertura completa.No anual, a cobertura é informativa, não um filtro dos totais; os valores podem mudar com novas cargas. Permanecem os intervalos de anos inteiros e as restrições de métricas. Relatórios padrão COUNTER não mudam.
Onde a revisão poderia começar?
counter_api/extensions/coverage.py,counter_api/painless.pye a integração emranking.py/distribution.py.Como este poderia ser testado manualmente?
coverage_policy; conferir os valores disponíveis e a cobertura informada.stricte conferir a rejeição do período incompleto.coverage.basis=available_annual_totalse o aviso de cobertura informativa.Validação automatizada: 376 testes aprovados, 2 ignorados; estilo, OpenAPI e Gitleaks aprovados.
Algum cenário de contexto que queira dar?
Evita ocultar dados disponíveis por lacunas na carga. Dias sem cobertura não são tratados como uso zero. O desempenho da soma diária foi verificado apenas em consultas limitadas, não em escala de produção.
Screenshots
Não se aplica.
Quais são os tickets relevantes?
Closes #157.
Referências
OpenSearch — acesso a campos em scripts
Segurança da informação (NSI.04)
Este PR manipula dados sensíveis ou pessoais (LGPD)?
Este PR altera autenticação, autorização, controle de acesso ou gerenciamento de sessão?
Este PR introduz, atualiza ou remove dependências de terceiros?
Este PR foi validado pelo pipeline de segurança (SonarQube / Trivy)?
Pendente de validação pelo pipeline; Gitleaks local aprovado.
Este PR concatena, monta ou executa comandos SQL, HTML ou JavaScript a partir de entrada externa?
Este PR expõe novos endpoints, telas ou serviços?
Algum segredo, senha, chave ou token está sendo adicionado ao código-fonte?