docs: plano, manifest e textos da descrição conferidos; descrição publicada no bucket

- PLANO §1/§7 com o estado real (ledger e bucket em 2026-09-30) e §9 com o
  visor do mural (7.1–7.2c), 7.3 e 7.4 pendentes
- MANIFEST final com contagens fechadas e seção sobre a descrição NOBRADE
- textos das 15 seções e do nível 1 conferidos na web, com fontes fora da descrição
- rascunho do pedido de CODEARQ ao CONARQ
- descricao/ enviada a s3://brasiliana/descricao/ com manifest-sha256.txt
This commit is contained in:
2026-09-30 22:35:21 +02:00
parent f05cdc5b9d
commit dfb6362e30
27 changed files with 4024 additions and 3336 deletions
+40 -27
View File
@@ -28,23 +28,26 @@ scraping é o caminho combinado. Ritmo cortês e identificação continuam valen
---
## 1. Estado em 2026-09-10
## 1. Estado em 2026-09-30
| | |
**Coleta concluída em 2026-09-13.** Conferido em 2026-09-30 contra o ledger
(`pipeline/subidor.sqlite`, tabela `enviados`) e a listagem do bucket.
| | Estado |
|---|---|
| Fase 1 (metadados) | ✅ **completa** — 13.059 registros, 0 erros. 1 falso-positivo conhecido (`.../1`, é a página raiz da comunidade, não um item — excluir na contagem final) |
| Catálogo | `pipeline/catalogo.jsonl`, re-exportado depois dos reparos (152 itens com `all_preservation_urls`) |
| Download principal (1 imagem/item) | 🟡 em andamento no navegador |
| Thumbnails | 🟡 em andamento no navegador |
| Extras (itens com múltiplos bitstreams, 115 itens) | ✅ completo |
| Fase 4 (legado objdigital) | 🟡 em andamento, local (`baixador.py --somente-legado`), 2.707 itens com `legacy_url` |
| `subidor.py` | rodando em `pipeline/`, `--vigiar`, roteia preservacao/thumbnail/legado certo |
| Fase 1 (metadados) | ✅ `catalogo.jsonl` com **13.060 itens** (o falso-positivo `/1` não está nele), também no bucket, idêntico ao local |
| Imagem de preservação | ✅ **12.991 itens**, 13.194 arquivos, 127,4 GB (121 itens com 2 a 8 imagens: 203 extras) |
| Sem preservação | ⚠️ **69 itens**: a origem responde HTTP 500 ao bitstream (`errors.md`). Todos, menos o `7523`, têm a miniatura |
| Miniatura do DSpace | ✅ 13.060 arquivos em 13.059 itens |
| Fase 4 (legado objdigital) | ✅ 2.137 arquivos (1.899 JPG, 213 PDF, 25 outros), 9,6 GB |
| Derivados | ✅ `thumb256` 13.059 e `medio` 13.059 |
| Blog | ✅ 636 posts em `wordpress/` + `wordpress-posts.jsonl` |
| Bucket | ✅ 81.269 objetos, 139,2 GB, mais 487 objetos (172 MB) em `descricao/` |
| `MANIFEST.md` | ✅ versão final no bucket (2026-09-30) |
| Descrição NOBRADE | ✅ ver §9, também no bucket em `descricao/` |
| Mural | ✅ no ar em https://xn--2dk.xyz/brasiliana/; o visor NOBRADE está no branch `feat/nobrade` (§9, fase 7) |
Não existe mais aba do Brave rodando isso — é uma aba de Chrome comum,
conectada via extensão Claude-in-Chrome. `coletor.js`/`coletor-resume.js`
grava em IndexedDB a cada item; fechar a aba não perde nada, mas o *loop*
para e precisa recolar o script certo pra retomar (ver `tasks/TODO.md`
pros comandos exatos de cada trilha ativa).
Nenhum navegador ou subidor precisa estar rodando: a fila local está zerada.
---
@@ -112,7 +115,7 @@ página). `baixador.py` na Finlândia fica só pra Fase 4 (objdigital, domínio
diferente, sem esse bloqueio — ver 2.11).
### 2.7 Itens com múltiplos bitstreams reais — não é caso raro
115 itens (de ~13.058) têm **2 a 6 imagens reais** no bundle ORIGINAL, não
115 itens (de ~13.058) têm **2 a 6 imagens reais** no bundle ORIGINAL (contagem final no ledger: 121 itens, 2 a 8 imagens), não
uma. `citation_pdf_url` não é gerado pra esses (o gerador de citação do
DSpace não sabe qual é "a" imagem quando há mais de uma) — por isso ficam
sem `preservation_url` na extração simples. Sintoma: `full_table` tem
@@ -382,12 +385,19 @@ Sem os dois é pasta de imagens, não arquivo.
## 7. Pendências
1. Terminar a Fase 1 e exportar o catálogo.
2. Medir a fração da trilha B (`BAIXA.quantos()`) — de graça, sem requisição.
3. Confirmar a projeção de ~116 GB (hoje: 6 arquivos medidos).
4. Decidir sobre os PDFs de álbum do objdigital — objetos distintos, o de
71,9 MB provavelmente não é caso isolado.
5. Gerar `MANIFEST.md` e `catalogo.jsonl` no bucket ao final.
1. ~~Terminar a Fase 1 e exportar o catálogo.~~ ✅ 13.060 itens, 2026-09-13.
2. ~~Medir a fração da trilha B.~~ Obsoleto: desde 2026-09-10 tudo roda por uma
trilha única no navegador (ver 2.6), e a coleta acabou.
3. ~~Confirmar a projeção de ~116 GB.~~ ✅ Medido: 127,4 GB de preservação e
139,2 GB no bucket, somando tudo.
4. ~~Decidir sobre os PDFs de álbum do objdigital.~~ ✅ Guardados como cópia
legada: são 213 PDF entre os 2.137 arquivos de `legado/`.
5. ~~Gerar `MANIFEST.md` e `catalogo.jsonl` no bucket.~~ ✅ `catalogo.jsonl`
no bucket é idêntico ao local (ETag multipart confere); `MANIFEST.md`
finalizado e reenviado em 2026-09-30.
6. Os 69 itens sem preservação dependem da origem voltar a servir o
bitstream (`errors.md`). Não há ação possível do nosso lado.
7. O que falta da descrição e do mural está em §9 (0.2, 7.3, 7.4).
## 8. Direitos
@@ -405,7 +415,7 @@ Implementação no branch `feat/nobrade`: `cd pipeline && python3 -m nobrade &&
|---|---|---|---|---|
| **0 — Decisões** |||||
| 0.1 | Definir nome da entidade custodiadora e código provisório (`BR RJXYZ`) | `pipeline/nobrade/config.py` | — | ✅ provisório `BR RJXYZ` |
| 0.2 | Pedir código de entidade ao CONARQ | e-mail enviado | 0.1 | ⏳ depende de você |
| 0.2 | Pedir código de entidade ao CONARQ | `descricao/pedido-codigo-conarq.md` | 0.1 | 📝 rascunho pronto (formulário CODEARQ, Res. CONARQ 28/2009); envio é do usuário |
| 0.3 | Fixar a convenção do código de referência (`BR RJXYZ.BF.IMS.GF.12345.01`) | `CONARQ.md` §5.2 | 0.1 | ✅ |
| **1 — Normalizadores (cada um gera uma tabela de revisão)** |||||
| 1.1 | Datas: mais de 20 formatos de `dc.date` → forma NOBRADE (`[1860?]`, `[18--]`) + ISO 8601 + original | `descricao/revisao/datas.tsv` | — | ✅ |
@@ -423,7 +433,7 @@ Implementação no branch `feat/nobrade`: `cd pipeline && python3 -m nobrade &&
| 2.4 | Somar dimensão e suporte nos níveis 1–3 | campo 1.5 agregado | 2.2 | ✅ |
| **3 — Textos dos níveis altos** |||||
| 3.1 | Nível 1: história arquivística, procedência, acesso, arranjo | `descricao/textos/nivel1.md` | — | ✅ |
| 3.2 | Nível 2: breve histórico das 16 instituições | `descricao/textos/secoes/` | — | 📝 rascunho |
| 3.2 | Nível 2: breve histórico das 15 instituições | `descricao/textos/secoes/` | — | ✅ fatos conferidos na web, fontes em cada arquivo (2026-09-30) |
| 3.3 | Nível 3: âmbito e conteúdo das séries principais | `descricao/textos/series/` | 1.3 | ✅ resumo automático |
| 3.4 | Biografias de fotógrafos a partir dos posts do WordPress | campo 2.2 das autoridades | 1.4 | ✅ fontes nas autoridades |
| **4 — Relações e fontes** |||||
@@ -437,9 +447,12 @@ Implementação no branch `feat/nobrade`: `cd pipeline && python3 -m nobrade &&
| 6.1 | Exportar EAD 3 | `descricao/ead/brasiliana.xml` | 5.2 | ✅ valida |
| 6.2 | Exportar EAC-CPF | `descricao/eac/*.xml` | 1.4 | ✅ valida |
| 6.3 | Validar contra os XSD | xmllint limpo | 6.1, 6.2 | ✅ |
| 6.4 | Subir `descricao/` para `s3://brasiliana/descricao/` e atualizar o MANIFEST | objetos no bucket | 6.3 | ⏳ aguardando ok |
| 6.4 | Subir `descricao/` para `s3://brasiliana/descricao/` e atualizar o MANIFEST | objetos no bucket | 6.3 | ✅ 487 objetos, 172 MB, com `manifest-sha256.txt`; MANIFEST final (2026-09-30) |
| 6.5 | (opcional) CSV de importação do AtoM | `descricao/atom.csv` | 5.2 | ✅ |
| **7 — Mural** |||||
| 7.1 | Cartão com código de referência, data normalizada, suporte, "original em" | `web/wall.html` | 2.2 | ✅ |
| 7.2 | Filtro por série (nível 3) | `web/wall.html` | 1.3 | ✅ |
| 7.3 | Publicar em `xyz/brasiliana` | commit | 7.x | ⏳ aguardando ok |
| 7.1 | Cartão vira visor: painel à esquerda (desktop) ou folha abaixo da imagem (celular); palco com zoom real (roda, pinça, duplo clique, arrastar, + − encaixar, F = só a imagem); barra "← mural \| filtros (n)" no topo do painel para voltar ao Atlas 3D e abrir os filtros por cima do visor | `web/wall.html` | 2.2 | ✅ |
| 7.2 | Ficha arquivística recolhível com os obrigatórios NOBRADE: código (clique copia), nível, arranjo clicável (Brasiliana › instituição › série), data na forma da norma + "na origem", selo "atribuída" nas datas atribuídas pelo arquivista, produtor na forma autorizada ISAAR, dimensão e suporte, original (5.1), reprodução (4.2), citar (copia a referência com o código) | `web/wall.html`, `nobrade/mural.py` | 2.2 | ✅ |
| 7.2b | Filtros reagrupados pela NOBRADE: Arranjo (instituição → série em cascata), Data, Pontos de acesso (autor pela autoridade ISAAR, lugar, assunto, pessoa, coleção citada), Suporte e uso (espécie e suporte da 1.5, e condição de reprodução da 4.2, filtro novo); link direto `#BR RJXYZ…` abre a peça pelo código de referência | `web/wall.html` | 7.2 | ✅ |
| 7.2c | Correções de dados que saíram do visor: ano implausível na origem (ex. `20-12-1395`) vira data ilegível, com nota; datas atribuídas por série ou instituição usam o miolo p10–p90 (`[1933-1943?]` em vez de `[1800-1999?]`); o histograma do mural só usa datas com até 30 anos de amplitude | `nobrade/datas.py`, `montar.py`, `mural.py` | 1.1 | ✅ |
| 7.3 | Publicar em `xyz/brasiliana` | commit | 7.x | ⏳ depois da verificação visual e do commit de `web/` pela sessão principal |
| 7.4 | Derivado `derivados/grande/` (WebP de 2.560 px) para zoom nítido. O visor já carrega sob demanda se o mapa tiver `grande: true`; falta gerar a partir das imagens de preservação no bucket | `derivados/grande/` | 7.1 | ⏳ |