GitHub App
Instale o App num repo ou org, configure o manifesto e todo evento pull_request dispara um PR Diff Red-Team Gate. O complemento ao fluxo CLI/Action.
Pontos-chave
- Webhook autenticado por HMAC X-Hub-Signature-256 contra GITHUB_APP_WEBHOOK_SECRET. Auth JWT/API-key é bypassado só para esta rota.
- Escuta eventos pull_request; roda o gate (manifesto → scan → Check Run + comentário) em background task detached para ACK em ~10s.
- Token de instalação cunhado por org via private key do App. Armazenado em githubInstallStore para eventos seguintes não re-handshakearem.
- Veredito (PROMOTE / HOLD) é postado como Check Run + comentário sticky de PR para o gate ficar visível no merge box.
01
App vs. CLI/Action
- Use o App quando quer gating zero-config em vários repos: instale uma vez no nível da org.
- Use o Action/CLI quando o time prefere workflow file explícito e opt-in por repo.
- O App é o único caminho para Check Runs nativos (a API que dirige o vermelho/verde no merge box).
02
O que está em prod hoje
- Handshake de install, receiver de webhook, verificação de assinatura, descoberta de manifesto, posting de Check Run + comentário.
- Schema do manifesto espelha o .doesitdefend.yml do Action: target.endpoint, template, paths observados.
- Estado de install persistido; reinstalações lidam limpo com ciclos revoke + re-grant.