rodado 07fcf1164b fix: hover tooltip miss on dense days + full mobile support
- hover search on the detail canvas used a fixed +/-3 array-index
  window; single-lane days run up to 53 documents, so most hovers
  in dense clusters found nothing. now scans by actual time radius.
- add touch support: one-finger pan, two-finger pinch-zoom, and tap
  for tooltip on the detail canvas; touch drag/resize on the overview
  brush.
- responsive pass: controls stack full-width on narrow screens,
  dropdown panels expand inline instead of floating off-screen, fix
  a flex-direction bug that made the search box 220px tall on mobile.
- README: drop build/regeneration instructions (no collaborators),
  link to the related vorcaros project.
2026-09-13 12:12:40 +02:00

Pet16704 — Linha do Tempo Processual

Visualização interativa da linha do tempo dos autos vinculados Pet16704 (STF) — um ponto por documento, agrupado pela instituição de origem (Relatoria, PGR, Polícia Federal, Partes e Defesas, Secretaria e Cartório) e posicionado pela data real de juntada.

Ver a página publicada: (preencha aqui o link do GitHub Pages depois do primeiro deploy)

Por que isso existe

O material de origem trazia um gitGraph do Mermaid com um commit por documento (3.437 no total). Isso não escala: o Mermaid posiciona commits em sequência fixa, sem eixo temporal real, e o SVG gerado saía em 16.368 × 40 px — ilegível. As descrições também vinham truncadas em ~100 caracteres pelas tags do Mermaid.

Este projeto troca aquele gráfico por uma timeline de verdade:

  • eixo X com datas reais (não sequência de commits) e zoom/pan sobre o período;
  • uma faixa de visão geral (histograma mensal empilhado por instituição) para navegar entre o período parado (20182025) e a explosão de atividade em 2026;
  • textos completos, sem truncamento, extraídos de TIMELINE.md;
  • filtros por instituição, tipo de documento e pessoas mencionadas;
  • uma visão em tabela (ordenável, pesquisável) como alternativa acessível ao gráfico.

Estrutura do repositório

index.html       página estática (self-contained: HTML + CSS + JS, sem build step)
docs.json        um registro por documento (id, instituição, data, texto completo, tipo, pessoas)
people.json      catálogo de pessoas identificadas: {key, count, role}
pipeline/        scripts e dados intermediários da extração (referência, não é preciso rodar nada)

Como os dados foram montados

  1. docs.json — cruzamento de duas fontes do dump original (gitgraph.md para a instituição de cada documento, TIMELINE.md para data/texto completo/arquivo-fonte). Ver pipeline/extract.py.

  2. Tipo de documento — extraído do nome do arquivo-fonte de cada documento (ex.: "Despacho", "Petição", "Procuração", "Certidão"), normalizado com acentuação correta.

  3. Pessoas mencionadas (people.json) — reconhecimento de entidades feito localmente, sem usar o Claude para o texto em si, com o modelo pierreguillou/ner-bert-base-cased-pt-lenerbr (BERT treinado no corpus LeNER-Br, de textos jurídicos brasileiros). Rodado sobre os 3.437 textos via pipeline/run_ner.py.

    Depois da extração bruta (435 nomes distintos), foi feita uma limpeza:

    • separação de nomes que o modelo juntou erroneamente com "e" (ex. "Fulano e Beltrano" → duas pessoas), preservando sobrenomes compostos legítimos ("Castro e Silva");
    • remoção de nomes de escritórios de advocacia reconhecidos como pessoa por engano;
    • descarte de fragmentos de um único token (nomes incompletos, ex. só o primeiro nome);
    • junção de variações do mesmo nome por contenção de tokens (ex. "Daniel Vorcaro" → "Daniel Bueno Vorcaro").

    Resultado: 292 pessoas distintas. O papel processual de cada uma (Relator/Ministro, Outorgante/Parte, Peticionante, Advogado(a), Investigado(a), Delegado(a) PF, Senador(a), Deputado(a), Alvo de diligência, Perito(a), Testemunha) foi inferido por frases-gatilho perto de cada menção (ex. "Despacho do Relator X", "Procuração de X constituindo Y", "em desfavor de X"). 63% das pessoas (185 de 292) ficaram sem papel classificado ("Mencionado(a)") por falta de um sinal textual próximo confiável — isso é esperado e fica visível na própria página, não escondido.

    Limitações conhecidas: isso é reconhecimento automático de entidades em texto livre, não uma base curada. Pode haver nomes não reconhecidos, variações da mesma pessoa não unificadas, e classificações de papel aproximadas. Trate como um ponto de partida para busca, não como fonte definitiva de identidade ou qualificação processual.

Projeto relacionado

vorcaros — visualização em grafo da rede societária (empresas e sócios) ligada às mesmas pessoas que aparecem nesta linha do tempo processual. Os dois projetos olham o mesmo caso por ângulos diferentes: um pela rede de negócios, este pelo andamento processual.

Aviso

Este projeto reúne informações de um processo público em curso no STF. Nomes, datas e descrições refletem o conteúdo dos autos tal como disponibilizado; erros de extração automática (OCR, NER, digitação no material de origem) podem existir. Não constitui manifestação jurídica sobre culpa, inocência ou qualquer qualificação processual das pessoas mencionadas.

S
Description
No description provided
Readme
371 KiB
Languages
HTML 88.8%
Python 11.2%