# Resultados dos Testes Locais

Data: 08/07/2026

## 1. Endpoints de producao restrita sem certificado

Comando:

```sh
./scripts/smoke_endpoints_sem_cert.sh
```

Resultado:

```text
496 https://adn.producaorestrita.nfse.gov.br/municipios/docs/index.html
496 https://adn.producaorestrita.nfse.gov.br/contribuintes/docs/index.html
496 https://adn.producaorestrita.nfse.gov.br/docs/index.html
496 https://adn.producaorestrita.nfse.gov.br/parametrizacao/docs/index.html
496 https://adn.producaorestrita.nfse.gov.br/danfse/docs/index.html
403 https://sefin.producaorestrita.nfse.gov.br/API/SefinNacional/docs/index
```

Interpretacao:

- Os endpoints ADN exigem certificado cliente.
- O endpoint SEFIN respondeu proibido sem credencial/autorizacao.

## 2. Banco mock

Comando:

```sh
./scripts/check_db_mock.sh
```

Resultado resumido:

```text
nfse_certificados
nfse_documentos
nfse_eventos
nfse_municipios
nfse_sync_logs
nfse_sync_state

municipios    2
certificados  2
sync_state    2
documentos    1
eventos       0
logs          2
```

Interpretacao:

- Migration inicial aplicada.
- Seed mock aplicado.
- Banco local pronto para testes do motor.

## 3. Certificado A1 mock

Comando:

```sh
./scripts/gerar_certificado_mock.sh 3550308 mock123
PFX_PASSWORD='mock123' ./scripts/test_certificado_homolog.sh certificados/municipios/3550308/certificado.pfx
```

Resultado do certificado:

```text
subject=C = BR, ST = SP, L = Homolog, O = Prefeitura Mock 3550308, CN = NFSE Mock 3550308
issuer=C = BR, ST = SP, L = Homolog, O = Prefeitura Mock 3550308, CN = NFSE Mock 3550308
notBefore=Jul  8 19:59:06 2026 GMT
notAfter=Jul  8 19:59:06 2027 GMT
```

Resultado da chamada:

```text
HTTP status: 495
495 SSL Certificate Error
An invalid certificate has been provided.
```

Interpretacao:

- O arquivo `.pfx` foi lido corretamente.
- A extracao de certificado/chave funcionou.
- A chamada mTLS foi feita.
- A API rejeitou o certificado por ele ser autoassinado/mock, como esperado.

## 4. Simulacao de processamento paralelo

Comando:

```sh
python3 scripts/simular_workers.py --concurrency 4 --ciclos 3
```

Resultado resumido:

```text
workers=4 municipios=5 ciclos=3
3550308 Sao Paulo: 0 -> 3
3304557 Rio de Janeiro: 0 -> 3
3106200 Belo Horizonte: 10 -> 13
4106902 Curitiba: 20 -> 23
2927408 Salvador: 30 -> 33
```

Interpretacao:

- O modelo de concorrencia por municipio esta representado.
- Cada municipio avanca seu proprio NSU sequencialmente.
- Municipios diferentes podem ser processados em paralelo.

## 5. Certificado real Pinhal da Serra

Certificado:

```text
MUNICIPIO DE PINHAL DA SERRA:04213870000108
Tipo: A1 PJ
Emissor: AC SyngularID Multipla
Validade: 31/07/2025 17:34:23 GMT ate 31/07/2026 17:34:23 GMT
```

Smoke test mTLS:

```text
GET https://adn.producaorestrita.nfse.gov.br/municipios/docs/index.html
HTTP 200
```

Consulta ADN por NSU:

```text
GET /municipios/DFe/0?lote=true
HTTP 404
StatusProcessamento: NENHUM_DOCUMENTO_LOCALIZADO
Codigo: E2020
TipoAmbiente: HOMOLOGACAO

GET /municipios/DFe/1?lote=true
HTTP 404
StatusProcessamento: NENHUM_DOCUMENTO_LOCALIZADO
Codigo: E2020
TipoAmbiente: HOMOLOGACAO
```

Interpretacao:

- O certificado autentica corretamente no ambiente de producao restrita.
- A API de municipios esta acessivel.
- Nao ha documentos fiscais localizados para Pinhal da Serra a partir dos NSUs testados.

## 6. Certificado real Pinhal da Serra em producao

Smoke test mTLS em producao:

```text
GET https://adn.nfse.gov.br/municipios/docs/index.html
HTTP 200
```

Consulta ADN por NSU em producao:

```text
GET https://adn.nfse.gov.br/municipios/DFe/0?lote=true
HTTP 200
StatusProcessamento: DOCUMENTOS_LOCALIZADOS
TipoAmbiente: PRODUCAO
```

Resultado observado:

- lote retornou documentos a partir do NSU 1;
- resposta contem `LoteDFe`;
- documentos incluem `TipoDocumento=NFSE`;
- tambem ha eventos `TipoDocumento=EVENTO` com `TipoEvento=CANCELAMENTO`;
- `ArquivoXml` vem compactado em GZip e codificado em base64.

Comando equivalente:

```sh
NFSE_ADN_BASE_URL='https://adn.nfse.gov.br/municipios' \
PFX_PASSWORD='senha' \
./scripts/consultar_dfe_nsu.sh 'certificados/MUNICIPIO DE PINHAL DA SERRA_04213870000108.pfx' 0
```
