Case técnico · Go + PostgreSQL

Webhooks que chegam. Mesmo quando tudo falha.

Uma engine de entrega durável com semântica at-least-once, retentativas inteligentes, isolamento multi-tenant e segurança aplicada desde a arquitetura.

POST /v1/events
Authorization: Bearer wde_...
Idempotency-Key: checkout_8472

{
  "type": "order.paid",
  "data": { "order_id": "ord_8472" }
}

HTTP/1.1 202 Accepted
{
  "event_id": "evt_01...",
  "status": "accepted"
}
O que este case demonstra

Backend de produção, não CRUD de tutorial.

O projeto concentra problemas reais de sistemas distribuídos e deixa as decisões visíveis em testes, ADRs, contrato OpenAPI e automação de entrega.

01
Durabilidade transacional

Evento e entregas elegíveis persistem atomicamente no PostgreSQL antes do 202.

02
Concorrência segura

Leases, fencing tokens e SKIP LOCKED protegem a fila contra workers concorrentes.

03
Defesa em profundidade

SSRF, HMAC, criptografia de payload, least privilege e logs sem dados sensíveis.

04
Confiabilidade observável

Métricas, traces, readiness dinâmica, dead letter e histórico de tentativas.

05
Contrato profissional

OpenAPI versionado, erros Problem Details, idempotência e paginação autenticada.

06
Entrega verificável

CI, race detector, scanners, SBOM, imagens distroless e migrations explícitas.

Fluxo de entrega

Simples por fora. Rigoroso por dentro.

01 · INGEST

API recebe

Autentica workspace, limita quota e valida idempotência.

02 · COMMIT

Postgres persiste

Registra evento e fan-out em uma transação atômica.

03 · CLAIM

Worker agenda

Seleciona trabalho com fairness, lease e fencing token.

04 · DELIVER

Destino confirma

Assina, envia, registra resultado e agenda nova tentativa.

“O objetivo não é fingir complexidade. É mostrar que eu sei onde ela existe e como controlá-la.”
  • Monólito modular com binários separados
  • 20 migrations versionadas
  • Testes unitários, integração e adversariais
  • ADRs para decisões arquiteturais
  • Runbooks de operação e recuperação
Demonstração navegável

Veja o contrato. Leia as decisões. Rode os testes.

O ambiente público usa somente dados sintéticos e existe para demonstrar engenharia.