Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BELISÁRIO — legislação comentada

Pipeline local para inventariar, normalizar, identificar e converter em Markdown os documentos da pasta:

DRIVE DO EDUARDO BELISÁRIO - atualização em 24-07-2026/
└── Legislação Grifada e Anotada - atualiz. em 24-07-2026/

O ZIP inteiro é auditado, mas somente essa pasta entra no mapeamento e na conversão. No inventário atual, isso corresponde a 1.239 documentos elegíveis: 1.107 DOCX, 107 PDF, 22 DOC e 3 RTF. Dois arquivos TMP e 18 documentos elegíveis fora do escopo são excluídos da conversão.

Preparação

Requisitos:

  • Python 3.11+;
  • uv;
  • Node.js 20+ e npx.
uv sync --locked
uv run pytest -q

O conversor é a skill convert-documents-to-markdown, executada por:

npx -y @firecrawl/anydoc ARQUIVO_TEMPORARIO -o ARQUIVO_MARKDOWN

Na primeira execução, o npx pode baixar o pacote anydoc. PDFs escaneados ou somente imagem não recebem OCR no modo local.

Inventário, classificação e IDs

Gere ou regenere os metadados com:

uv run python main.py

Esse comando não converte documentos. Ele valida o inventário contra o ZIP, cria as 18 pastas de área e gera:

  • mapeamento-belisario.json — registro completo dos 1.239 documentos em escopo;
  • ids-belisario.json — visão compacta dos IDs e hashes;
  • relatorio-inventario.json — contagens, divergências, exclusões e classificações.
  • relatorio-falhas.md — motivo consolidado dos documentos que não foram convertidos; esses casos não são corrigidos automaticamente.

Cada documento tem um document_id estável, baseado no caminho interno canônico do ZIP, e um content_sha256, que identifica a versão dos bytes. O ID não depende do nome normalizado nem da área, para continuar válido quando a organização evoluir.

Conversão

O padrão converte apenas um documento como smoke test e não sobrescreve saída:

uv run python convert_belisario.py --limit 1

Para testar uma área:

uv run python convert_belisario.py --area Administrativo --limit 3

Para converter todos os 1.239 documentos em escopo:

uv run python convert_belisario.py --limit 0

Use --force somente quando quiser substituir Markdown já existente. O relatório incremental fica em relatorio-conversao.jsonl. Cada Markdown recebe front matter com document_id, caminho original, nome normalizado, área e content_sha256.

Na execução atual, os não-sucessos foram documentados sem reprocessamento: quatro falhas do parser (max_xml_nodes ou trailer PDF inválido) e cinco PDFs escaneados que exigem OCR.

Limitações

  • O pipeline não executa OCR.
  • O pipeline não cria chunks, embeddings ou índice RAG ainda.
  • Documentos fora da pasta Legislação Grifada e Anotada - atualiz. em 24-07-2026 permanecem no relatório como out_of_scope.
  • Classificações ambíguas ficam em 17-Material-Apoio e são registradas no relatório.

Documentação detalhada

Consulte docs/README.md para a operação reproduzível, o contrato de dados/IDs e as falhas e decisões de escopo registradas.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages