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 (2018–2025) 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
web/index.html página estática (self-contained: HTML + CSS + JS, sem build step)
web/docs.json um registro por documento (id, instituição, data, texto completo, tipo, pessoas)
web/people.json catálogo de pessoas identificadas: {key, count, role}
PESSOAS.md o mesmo catálogo, em tabelas markdown agrupadas por papel processual
pipeline/ scripts e dados intermediários da extração (referência, não é preciso rodar nada)
parte1/, parte2/ resumos dos autos vinculados a Pet16704 (um .md por processo + um RESUMO.md geral)
Para rodar localmente: cd web && python3 -m http.server 8000 e abrir http://localhost:8000
(precisa de um servidor por causa do fetch() de docs.json/people.json — abrir o arquivo direto
via file:// não funciona nos navegadores).
Na linha do tempo, clicar (ou tocar, no celular) em um ponto abre ao lado o resumo completo daquele documento — data, instituição, tipo, texto integral, pessoas mencionadas e arquivo-fonte. Passar o mouse sobre um ponto, sem clicar, mostra só uma prévia rápida (tooltip).
Como os dados foram montados
-
docs.json— cruzamento de duas fontes do dump original (gitgraph.mdpara a instituição de cada documento,TIMELINE.mdpara data/texto completo/arquivo-fonte). Verpipeline/extract.py. -
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.
-
Pessoas mencionadas (
people.json/PESSOAS.md) — reconhecimento de entidades feito localmente, sem usar o Claude para o texto em si, com o modelopierreguillou/ner-bert-base-cased-pt-lenerbr(BERT treinado no corpus LeNER-Br, de textos jurídicos brasileiros). Rodado sobre os 3.437 textos viapipeline/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, listadas em
people.json(formato bruto, usado pela página) e emPESSOAS.md(tabelas legíveis, agrupadas por papel). O papel processual de cada pessoa (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 listagem, 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.
-
Autos vinculados (
parte1/,parte2/) — resumos em markdown dos processos conexos citados ao longo da Pet16704 (Inq 5026, Inq 5035, Inq 5050, Inq 5070, Rcl 88121 e diversas Petições — PET 15198, 15375, 15478 etc.), um arquivo por processo mais umRESUMO.mdconsolidado em cada pasta. Cobrem partes/investigados, advogados, autoridades e linha do tempo resumida de cada procedimento — contexto complementar à timeline principal, não gerado pelo mesmo pipeline automático de NER.
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.