Files
acaua/CHANGELOG.pt-BR.md
Lucas RayanandClaude Sonnet 5 f2a10ca1a6
CI / Tests (Linux) (push) Successful in 33s
CI / Dependency audit (push) Successful in 19s
Release / Build image (amd64) (push) Canceled after 0s
Release / Build image (arm64) (push) Canceled after 0s
Release / Publish tags (push) Canceled after 0s
Release / Gitea release (push) Canceled after 0s
Release / ci (push) Successful in 34s
Release / Plan (reuse the published image?) (push) Successful in 5s
CI / Docker image (build and smoke test) (push) Skipped
CI / Format and clippy (push) Successful in 15s
docs: mark v0.1.0 as the first real release
The previous "0.1.0 - 2026-10-31" entry documented a pre-implementation
skeleton and explicitly said no release artifact had been published.
Since it was never tagged, fold it into a single accurate v0.1.0 entry
dated today, covering the real first release: all 4 pillars, Docker-only
distribution, and the working dashboard.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VAyr8d7HuAdUGB6aA5xmDD
2026-11-01 08:33:51 -03:00

45 lines
3.9 KiB
Markdown

# Changelog
[English](CHANGELOG.md) · **Português**
Formato baseado no [Keep a Changelog](https://keepachangelog.com/pt-BR/1.1.0/); versões seguem SemVer.
## [Unreleased]
## [0.1.0] - 2026-11-01
### Adicionado
- **Pilar 1 (v1.2):** Periodograma de Rayleigh/Schuster com grade limitada ao intervalo observado ($T \le \text{span}/3$), portão de significância por regularidade e exclusões de infraestrutura (NTP, mDNS/LLMNR/NBNS, SSDP, não-TCP/UDP).
- **Pilar 2 (v1.0):** Detector de sessões TCP persistentes com encadeamento de timeouts de inatividade (intervalos $\le 3600$s sem novo SYN), score logarítmico de persistência e métricas de PCR e tentativas falhas na evidência.
- **Pilar 3 (v1.0):** Detector de capacidade de informação em subdomínios DNS ($I = H \times C$ bits/h) para identificar túneis de alta entropia, com Divergência Jensen-Shannon (JSD) registrada na evidência.
- **Pilar 4 (v1.0):** Fusão noisy-OR ponderada por host ($w_1=w_2=w_3=0.75$) com vínculo determinístico de evidências, ranqueando hosts na saída humana do `acaua analyze` via seção `hosts:`.
- **Ingestão de `dns.log` do Zeek:** Particionamento diário Hive Parquet para consultas DNS com mapeamento determinístico de colunas pelo cabeçalho TSV.
- **Esquema de armazenamento Parquet (v1.2):** Esquema de 15 colunas para `conn.log` suportando `conn_state`, `history`, `orig_pkts`, `resp_pkts`, `orig_ip_bytes`, `resp_ip_bytes`.
- **Relato de alertas em memória:** Rota `/api/alerts` do daemon web agora serve os alertas da análise mais recente.
- **Dashboard de verdade na UI:** Navegação lateral agora troca de painel de fato, em vez de um scroll sem efeito. Novo painel Hosts ranqueia os hosts observados por score de fusão, com detalhamento por pilar (P1/P2/P3). Painel de Alertas é filtrável/ordenável por pilar e score, com evidência completa renderizada em tabela formatada. Painel de Visão Geral ganhou KPIs e dois gráficos SVG interativos (top hosts por score de fusão, distribuição de alertas por pilar).
### Modificado
- **Breaking (0.x):** A fórmula v1.2 do Pilar 1 altera pontuações e a geração de `Alert.id` para refletir a grade limitada e a agregação por inícios de sessão.
- Distribuição migrada para 100% Docker e docker-compose (daemon servidor e dashboard web); tarballs binários nativos e instaladores desktop descontinuados.
- DuckDB agora é dependência obrigatória em tempo de execução, linkada dinamicamente contra a `libduckdb.so` oficial pré-compilada (v1.5.6) com SHA-256 fixado via `scripts/fetch-libduckdb.sh`.
- MSRV do workspace atualizado para Rust 1.88 (exigido pelo `duckdb ~1.10506.1`).
- Runtime do container e imagem base atualizados para Debian 13 trixie.
### Corrigido
- Correção de falsos positivos críticos em capturas curtas onde candidatos a período excediam a duração observada.
- Correção na contagem de partições em `ingest_dir` para utilizar a união dos conjuntos de datas em vez de somar contagens de arquivos.
- Erros de execução do DuckDB agora são contabilizados em `files_failed` em vez de linhas ruins.
- Atualização do status da checagem do `doctor` de "skeleton" para "ok" / "degraded".
- Encerramento limpo em `SIGTERM` ao rodar como PID 1 em ambientes de container.
### Removido
- Aplicativo desktop Tauri (`apps/gui/src-tauri`) e scripts de build desktop associados.
- Flag de autoatualização (`acaua update --apply`) e sobrescrita de binário em disco. Atualizações agora são feitas via pull de imagem (`docker compose pull`).
### Esqueleto inicial
- Workspace Rust com `acaua-core` e `acaua-cli`.
- Esqueleto da CLI com `serve`, `analyze`, `doctor` e `update [--apply]`.
- Esqueleto da API Axum com rotas de health, status, alertas, análise e checagem de atualização.
- UI vanilla embutida (shell desktop removido depois; ver Removido acima).
- Documentação em inglês/português, workflows de CI/release e script local de verificação.