diff --git a/CONTEXTO.md b/CONTEXTO.md index d348dca..380f63b 100644 --- a/CONTEXTO.md +++ b/CONTEXTO.md @@ -2,13 +2,14 @@ ## Objetivo -Organizar, preservar e processar documentos relacionados ao projeto `arara_oarmp`, mantendo rastreabilidade das alterações e separando arquivos originais, intermediários e processados. +Organizar, preservar e processar documentos relacionados ao projeto Arara OAMRP, mantendo rastreabilidade das alterações e separando arquivos originais, intermediários, processados e modelos de software. ## Estrutura de Pastas -- `raw/`: arquivos originais, sem alteração. -- `pre_process/`: scripts e saídas intermediárias de pré-processamento. -- `processed/`: dados finais limpos, consolidados ou prontos para análise. +- `db/raw/`: arquivos originais, sem alteração. +- `db/pre_process/`: scripts e saídas intermediárias de pré-processamento. +- `db/processed/`: dados finais limpos, consolidados ou prontos para análise. +- `software/`: modelos, scripts analíticos e protótipos executáveis do OAMRP. - `docs/`: documentação técnica, autoria e histórico de versões. ## Arquivos de Documentação @@ -28,8 +29,9 @@ Organizar, preservar e processar documentos relacionados ao projeto `arara_oarmp ## Orientações de Trabalho -- Manter documentos originais sempre em `raw/`. -- Não alterar arquivos dentro de `raw/`; quando necessário, gerar cópias ou saídas em `pre_process/`. +- Manter documentos originais sempre em `db/raw/`. +- Não alterar arquivos dentro de `db/raw/`; quando necessário, gerar cópias ou saídas em `db/pre_process/`. +- Manter modelos e protótipos executáveis em `software/`. - Registrar no `LOG.md` toda entrada, alteração, processamento ou decisão relevante. - Registrar em `docs/changelog.md` mudanças significativas de versão, como novo parser, novo conjunto de dados, mudança estrutural ou nova funcionalidade. - Usar o formato de log com data, hora, tag do colaborador e descrição objetiva da ação. @@ -38,7 +40,7 @@ Organizar, preservar e processar documentos relacionados ao projeto `arara_oarmp - Registrar quantidade de registros extraídos, descartados, corrigidos ou validados. - Registrar problemas encontrados nos arquivos originais, como erros de digitação, páginas ilegíveis, campos ausentes ou tabelas quebradas. - Registrar decisões de padronização, por exemplo nomes de colunas, unidades, formatos de data e tratamento de acentos. -- Explicitar os critérios usados para mover dados de `pre_process/` para `processed/`. +- Explicitar os critérios usados para mover dados de `db/pre_process/` para `db/processed/`. - Atualizar `docs/about.md` quando o fluxo técnico, campos extraídos ou limitações conhecidas mudarem. ## Formato Recomendado do Log @@ -46,5 +48,5 @@ Organizar, preservar e processar documentos relacionados ao projeto `arara_oarmp ```text | Data | Hora | Autor | Ação | Arquivos | Observações | | --- | --- | --- | --- | --- | --- | -| 2026-06-15 | 15:41 | VTO | Pré-processou PDF de inspeções | raw/documento.pdf; pre_process/saida.csv | 18 inspeções extraídas | +| 2026-06-15 | 15:41 | VTO | Pré-processou PDF de inspeções | db/raw/documento.pdf; db/pre_process/saida.csv | 18 inspeções extraídas | ``` diff --git a/LOG.md b/LOG.md index 37bf86a..767dcb7 100644 --- a/LOG.md +++ b/LOG.md @@ -21,3 +21,4 @@ Legenda de autores: | 2026-06-15 | 17:57 | VTO | Criou documentação técnica no padrão `docs/` | `docs/about.md`; `docs/authors.md`; `docs/changelog.md`; `README.md`; `CONTEXTO.md`; `LOG.md` | Estrutura inspirada no módulo `meteorologia_aeroportos`: documentação técnica, autoria e changelog separados do log operacional. | | 2026-06-15 | 18:11 | VTO | Agrupou artefatos do relatório de ciclo em subpasta própria | `pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/`; `README.md`; `docs/about.md` | Removido `.gitkeep` de `pre_process/` porque a pasta deixou de estar vazia; `.gitkeep` de `processed/` foi mantido. | | 2026-06-15 | 18:33 | VTO | Comparou ICA 66-31/2023 com relatório de ciclo C-105 2805 | `raw/ICA 66-31 2023.pdf`; `pre_process/comparacao_ica_66_31_c105_2023/` | A comparação usou o Anexo D textual do PDF completo da ICA. | +| 2026-06-15 | 19:01 | VTO | Reorganizou dados em `db/` e adicionou protótipo OAMRP | `db/`; `software/oamrp_v1.py`; `.gitignore`; `README.md`; `CONTEXTO.md`; `docs/about.md`; `docs/authors.md`; `docs/changelog.md` | Commit `1131267`; diretórios `raw/`, `pre_process/` e `processed/` movidos para `db/`; modelo MIP inicial em PuLP adicionado em `software/`. | diff --git a/README.md b/README.md index 4aebda6..19e8431 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# Arara OARMP +# Arara OAMRP -Este repositório organiza os arquivos e processamentos do projeto Arara OARMP do Esquadrão Arara, em Manaus. +Este repositório organiza os arquivos, processamentos e protótipos do projeto Arara OAMRP do Esquadrão Arara, em Manaus. A ideia é construir, em conjunto, uma base confiável para encaixar missões, aeronaves e manutenções. O repositório serve como lugar único para guardar documentos originais, registrar decisões, transformar relatórios em dados utilizáveis e manter um histórico claro do que foi feito por cada colaborador. @@ -21,18 +21,21 @@ Na prática: ```text arara_oarmp/ - raw/ - pre_process/ - processed/ + db/ + raw/ + pre_process/ + processed/ + software/ docs/ CONTEXTO.md LOG.md README.md ``` -- `raw/`: documentos originais. Não editar esses arquivos diretamente. -- `pre_process/`: scripts e arquivos intermediários gerados a partir dos documentos originais. -- `processed/`: arquivos finais, limpos e prontos para análise ou uso. +- `db/raw/`: documentos originais. Não editar esses arquivos diretamente. +- `db/pre_process/`: scripts e arquivos intermediários gerados a partir dos documentos originais. +- `db/processed/`: arquivos finais, limpos e prontos para análise ou uso. +- `software/`: modelos e protótipos executáveis, incluindo o modelo MIP inicial de roteamento. - `docs/`: documentação técnica, autoria e histórico de versões. - `CONTEXTO.md`: regras, combinados e orientações permanentes do projeto. - `LOG.md`: histórico rastreável das ações feitas no projeto. @@ -54,9 +57,9 @@ Este caminho é bom para quem só quer ver arquivos, baixar documentos ou confer 1. Abra o repositório no Gitea do PPGAO/ITA. 2. Entre nas pastas para ver os arquivos. -3. Use `raw/` para consultar documentos originais. -4. Use `pre_process/` para consultar arquivos intermediários. -5. Use `processed/` para consultar dados finais quando existirem. +3. Use `db/raw/` para consultar documentos originais. +4. Use `db/pre_process/` para consultar arquivos intermediários. +5. Use `db/processed/` para consultar dados finais quando existirem. 6. Abra o `LOG.md` para entender o que já foi feito. 7. Abra o `CONTEXTO.md` para ver os combinados do projeto. @@ -125,16 +128,16 @@ git push ## Fluxo recomendado de trabalho 1. Rode `git pull` antes de começar. -2. Coloque documentos novos em `raw/`. -3. Gere arquivos intermediários em `pre_process/`. -4. Coloque resultados finais em `processed/`. +2. Coloque documentos novos em `db/raw/`. +3. Gere arquivos intermediários em `db/pre_process/`. +4. Coloque resultados finais em `db/processed/`. 5. Atualize o `LOG.md`. 6. Faça commit. 7. Rode `git push`. ## Cuidados importantes -- Não editar arquivos originais dentro de `raw/`. +- Não editar arquivos originais dentro de `db/raw/`. - Não apagar arquivos de outros colaboradores sem combinar. - Não subir arquivos temporários do Office, como arquivos começando com `~$`. - Não colocar senhas, tokens ou informações pessoais desnecessárias no repositório. @@ -145,14 +148,17 @@ git push Já existe um pré-processamento do relatório de ciclo de inspeções da aeronave C-105 matrícula 2805, com data de relatório `2026-06-15`. +Também existe um primeiro protótipo em `software/oamrp_v1.py`, que formula um modelo MIP compacto em PuLP para atribuir aeronaves a missões de transporte, respeitando continuidade espacial/temporal, turnaround mínimo e limite de horas até inspeção. + Arquivos principais: ```text -raw/relatorio_ciclo_inspecoes_c105_2805_2026-06-15.pdf -pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/preprocess_pdf.py -pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_texto.txt -pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_inspecoes.json -pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_inspecoes.csv +db/raw/relatorio_ciclo_inspecoes_c105_2805_2026-06-15.pdf +db/pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/preprocess_pdf.py +db/pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_texto.txt +db/pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_inspecoes.json +db/pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_inspecoes.csv +software/oamrp_v1.py ``` Esse processamento extraiu 18 inspeções e separou campos como inspeção, referência, vencimento, TSO, letra, nível, duração, intervalo por horas de voo, meses contínuos e pousos. diff --git a/docs/about.md b/docs/about.md index e2701ca..be5a23e 100644 --- a/docs/about.md +++ b/docs/about.md @@ -1,16 +1,17 @@ -# Documentação Técnica — Arara OARMP +# Documentação Técnica — Arara OAMRP ## O que é -O Arara OARMP é um projeto para organizar dados e documentos usados no planejamento e acompanhamento operacional do Esquadrão Arara, em Manaus. +O Arara OAMRP é um projeto para organizar dados, documentos e modelos usados no planejamento e acompanhamento operacional do Esquadrão Arara, em Manaus. O objetivo é construir uma base rastreável para encaixar missões, aeronaves e manutenções, começando pela leitura e estruturação de documentos operacionais e de manutenção. Nesta fase inicial, o projeto contém: -- documentos originais em `raw/`; -- scripts e saídas intermediárias em `pre_process/`; -- área reservada para dados finais em `processed/`; +- documentos originais em `db/raw/`; +- scripts e saídas intermediárias em `db/pre_process/`; +- área reservada para dados finais em `db/processed/`; +- protótipos de otimização e análise em `software/`; - documentação de contexto, autoria, mudanças e rastreabilidade. ## Fontes de dados @@ -21,32 +22,44 @@ Fonte inicial processada: | Arquivo | Conteúdo | Observação | | --- | --- | --- | -| `raw/relatorio_ciclo_inspecoes_c105_2805_2026-06-15.pdf` | Relatório de ciclo de inspeções do equipamento | Aeronave C-105, matrícula 2805, relatório de 2026-06-15 | +| `db/raw/relatorio_ciclo_inspecoes_c105_2805_2026-06-15.pdf` | Relatório de ciclo de inspeções do equipamento | Aeronave C-105, matrícula 2805, relatório de 2026-06-15 | -Arquivos originais devem permanecer em `raw/` sem edição direta. +Arquivos originais devem permanecer em `db/raw/` sem edição direta. ## Como funciona O fluxo atual é: -1. Guardar documentos originais em `raw/`. -2. Executar scripts de extração e padronização em `pre_process/`. +1. Guardar documentos originais em `db/raw/`. +2. Executar scripts de extração e padronização em `db/pre_process/`. 3. Gerar saídas intermediárias em texto, JSON e CSV. 4. Manter campos originais para rastreabilidade. 5. Separar campos discretos úteis para cálculo, comparação e planejamento. 6. Registrar mudanças relevantes em `LOG.md`. -7. Consolidar dados finais em `processed/` quando os critérios de qualidade estiverem definidos. +7. Consolidar dados finais em `db/processed/` quando os critérios de qualidade estiverem definidos. +8. Desenvolver protótipos e modelos em `software/`, mantendo dados e código separados. ## Pré-processamento atual -O script `pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/preprocess_pdf.py` lê o relatório de ciclo de inspeções em PDF e gera: +O script `db/pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/preprocess_pdf.py` lê o relatório de ciclo de inspeções em PDF e gera: ```text -pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_texto.txt -pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_inspecoes.json -pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_inspecoes.csv +db/pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_texto.txt +db/pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_inspecoes.json +db/pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/relatorio_ciclo_inspecoes_c105_2805_2026-06-15_inspecoes.csv ``` +## Modelo OAMRP inicial + +O arquivo `software/oamrp_v1.py` contém um protótipo de modelo MIP em PuLP para o Aircraft Routing do Esquadrão Arara. O modelo usa dados sintéticos/substituíveis de aeronaves e missões e busca maximizar o cumprimento ponderado de missões opcionais. + +Restrições representadas no protótipo: + +- continuidade espacial e temporal por aeronave; +- turnaround mínimo entre missões; +- limite de horas de célula até a próxima inspeção; +- base inicial e horas acumuladas reais de cada aeronave como parâmetros de entrada. + Campos extraídos e estruturados: | Campo | Conteúdo | @@ -97,13 +110,14 @@ Unidades de duração: 3. Mudanças no formato do relatório podem exigir ajuste no script. 4. A grafia original é preservada, inclusive erros existentes no documento fonte. 5. Ainda não há validação cruzada com outros sistemas ou fontes oficiais. -6. Ainda não há modelo final em `processed/` para integração completa entre missões, aeronaves e manutenções. +6. O modelo em `software/oamrp_v1.py` ainda é protótipo e usa dados de exemplo a substituir por bases reais. +7. Ainda não há modelo final em `db/processed/` para integração completa entre missões, aeronaves e manutenções. ## Oportunidades de melhoria | Prioridade | Melhoria | | --- | --- | -| Alta | Definir o modelo final de dados em `processed/` | +| Alta | Definir o modelo final de dados em `db/processed/` | | Alta | Criar uma tabela mestre de aeronaves | | Alta | Criar uma tabela mestre de missões | | Alta | Definir regras para cálculo de vencimento por horas, meses e pousos | @@ -116,7 +130,7 @@ Unidades de duração: Se o pré-processamento falhar, verifique: -- se o PDF existe em `raw/`; +- se o PDF existe em `db/raw/`; - se o nome do arquivo no script corresponde ao arquivo real; - se as bibliotecas Python necessárias estão instaladas; - se o layout do PDF mudou; @@ -125,5 +139,5 @@ Se o pré-processamento falhar, verifique: Para reexecutar o pré-processamento: ```powershell -python pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/preprocess_pdf.py +python db/pre_process/relatorio_ciclo_inspecoes_c105_2805_2026-06-15/preprocess_pdf.py ``` diff --git a/docs/authors.md b/docs/authors.md index 86f2cc3..8c9eb0d 100644 --- a/docs/authors.md +++ b/docs/authors.md @@ -10,16 +10,16 @@ ## Instituição e contexto -Projeto desenvolvido para apoiar o OARMP do Esquadrão Arara, em Manaus, com organização colaborativa em repositório Git. +Projeto desenvolvido para apoiar o OAMRP do Esquadrão Arara, em Manaus, com organização colaborativa em repositório Git. ## Como contribuir Ao modificar ou estender este projeto: 1. Atualize sua cópia com `git pull` antes de começar. -2. Preserve documentos originais em `raw/`. -3. Coloque scripts e saídas intermediárias em `pre_process/`. -4. Coloque resultados finais e validados em `processed/`. +2. Preserve documentos originais em `db/raw/`. +3. Coloque scripts e saídas intermediárias em `db/pre_process/`. +4. Coloque resultados finais e validados em `db/processed/`. 5. Registre mudanças operacionais em `LOG.md`. 6. Registre mudanças de versão em `docs/changelog.md` quando houver alteração significativa. 7. Identifique o autor usando a tag do colaborador: `VTO`, `GNR` ou `JOM`. @@ -39,6 +39,7 @@ Ao modificar ou estender este projeto: | Versão | Autor | Data | Descrição resumida | | --- | --- | --- | --- | +| v0.2 | VTO | 2026-06 | Reorganização dos dados em `db/`, criação de `software/` e inclusão do protótipo MIP `oamrp_v1.py` | | v0.1 | VTO | 2026-06 | Estrutura inicial, documentação, pré-processamento do primeiro relatório de inspeções e migração para o repositório `arara_oarmp` | Contribuidores futuros devem adicionar uma linha nesta tabela e criar a entrada correspondente em `docs/changelog.md`. diff --git a/docs/changelog.md b/docs/changelog.md index 1c22fca..3397672 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,6 +1,6 @@ # Changelog -Todas as versões significativas do Arara OARMP devem ser registradas aqui. O `LOG.md` guarda o diário operacional detalhado; este arquivo resume mudanças por versão. +Todas as versões significativas do Arara OAMRP devem ser registradas aqui. O `LOG.md` guarda o diário operacional detalhado; este arquivo resume mudanças por versão. Formato: @@ -14,6 +14,22 @@ Formato: --- +## v0.2 — VTO — 2026-06 + +### Adicionado + +- Diretório `software/` com o primeiro protótipo `software/oamrp_v1.py`. +- Modelo MIP compacto em PuLP para atribuição de aeronaves a missões opcionais. +- Regras de `.gitignore` para caches Python. + +### Alterado + +- Estrutura de dados reorganizada para `db/raw/`, `db/pre_process/` e `db/processed/`. +- Documentação atualizada para refletir a separação entre dados (`db/`) e modelos (`software/`). +- Nome técnico do projeto padronizado como Arara OAMRP nos documentos principais. + +--- + ## v0.1 — VTO — 2026-06 ### Adicionado