Capítulo 0.6 — Controle determinístico vs mitigação probabilística¶
🎯 Objetivo do capítulo¶
Estabelecer uma das ideias centrais deste livro: controles e mitigações não são a mesma coisa.
🧠 Conceito principal¶
| Categoria | Natureza | Exemplo | O que garante? |
|---|---|---|---|
| Controle determinístico | Código executável | Validação de schema, RBAC, policy-as-code | Comportamento previsível |
| Política executável | Policy-as-code | OPA/Rego, Cedar | Comportamento previsível |
| Autorização | Serviço de identidade | OAuth, OIDC, IAM | Comportamento previsível |
| Validação | Schema, contract test | Pydantic, JSON Schema | Forma, não conteúdo |
| Observabilidade | Tracing, métricas | OpenTelemetry, logs | Capacidade de investigação |
| Mitigação | Reduz probabilidade | Sanitização de entrada | Reduz risco, não elimina |
| Heurística | Regra aproximada | Detector de prompt injection | Reduz risco, não elimina |
| Prompt | Instrução em linguagem natural | "Não execute comandos perigosos" | Não garante nada |
| Guardrail | Camada heurística | Classificador de saída | Reduz risco, não elimina |
| Risco residual | O que sobra | Sempre existe | É aceito ou transferido |
A regra prática:
Para riscos críticos, prefira controle determinístico. Use mitigação como defesa em profundidade, nunca como mecanismo único.
🚨 Modos de falha¶
- Tratar guardrail como garantia.
- Tratar prompt como política.
- Tratar metadata como enforcement.
- Tratar descrição de tool como segurança.
🛡️ Mitigações¶
Estes três anti-padrões merecem capítulos próprios e são revisitados na Parte 3 e na Parte 4:
- 🔐 "Prompt não é política" - Cap. 3.x e 4.x.
- 🔧 "Tool description não é segurança" - Cap. 3.x e 4.x.
- 🗑️ "Depreciação não é só metadata" - Cap. 7.x.
📌 Checklist¶
- [ ] Toda regra crítica está em código?
- [ ] Existe distinção explícita entre controle e mitigação na documentação?
- [ ] Risco residual está documentado e aceito formalmente?