Pular para conteúdo

HUMILITY-HOOK: Protocolo de Humildade Epistêmica

Status: IMPLEMENTADO (HYP-025) Data: 2026-01-21 Autor: CEO-Zero + Squad Tech (Werner, Andre K, Murilo) Problema: Respostas operacionais/arquiteturais sem validação de dados reais Aprovado por: Founder (2026-01-21)


1. Contexto do Problema

O que estava acontecendo

┌─────────────────────────────────────────────────────────────────┐
│  FLUXO PROBLEMÁTICO (antes)                                     │
│                                                                 │
│  Pergunta operacional do usuário                                │
│         │                                                       │
│         ▼                                                       │
│  ┌─────────────────┐                                           │
│  │ CEO-Zero busca  │                                           │
│  │ na memória/LLM  │ ← Dados potencialmente desatualizados     │
│  └────────┬────────┘                                           │
│           │                                                     │
│           ▼                                                     │
│  ┌─────────────────┐                                           │
│  │ Responde com    │                                           │
│  │ confiança alta  │ ← Confabulação / "pitaco sem dados"       │
│  └─────────────────┘                                           │
│                                                                 │
│  RESULTADO: Informações incorretas → Decisões erradas           │
└─────────────────────────────────────────────────────────────────┘

Sintomas identificados

Sintoma Exemplo Impacto
Resposta rápida demais "O CAC está em R$50" (sem verificar) Decisão baseada em dado errado
Generalização "Best practice de mercado é X" Ignora contexto APEX
Confiança sem base "Certamente o time está fazendo Y" Erosão de confiança
Memória vs Realidade Dados de 3 meses atrás Desalinhamento temporal

2. Solução: Hook de Humildade Forçada

Fluxo Corrigido

┌─────────────────────────────────────────────────────────────────┐
│  FLUXO COM HUMILITY HOOK                                        │
│                                                                 │
│  Pergunta do usuário                                            │
│         │                                                       │
│         ▼                                                       │
│  ┌─────────────────┐                                           │
│  │ STEP 1: Detectar│                                           │
│  │ tipo de pergunta│                                           │
│  └────────┬────────┘                                           │
│           │                                                     │
│     ┌─────┴─────┐                                              │
│     │           │                                               │
│     ▼           ▼                                               │
│ ESTRATÉGICO  OPERACIONAL                                        │
│     │           │                                               │
│     │           ▼                                               │
│     │    ┌─────────────────┐                                   │
│     │    │ STEP 2: Consultar│                                  │
│     │    │ MCP obrigatório  │                                  │
│     │    └────────┬────────┘                                   │
│     │             │                                             │
│     │       ┌─────┴─────┐                                      │
│     │       │           │                                       │
│     │       ▼           ▼                                       │
│     │   TEM DADOS   SEM DADOS                                   │
│     │       │           │                                       │
│     │       │           ▼                                       │
│     │       │    ┌─────────────────┐                           │
│     │       │    │ STEP 3: Admitir │                           │
│     │       │    │ "Não sei, vou   │                           │
│     │       │    │ verificar"      │                           │
│     │       │    └─────────────────┘                           │
│     │       │                                                   │
│     ▼       ▼                                                   │
│  ┌─────────────────┐                                           │
│  │ STEP 4: Responder│                                          │
│  │ com fonte clara  │                                          │
│  └─────────────────┘                                           │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

3. Regras de Ativação

3.1 Tópicos que REQUEREM consulta MCP/Docs (Whitelist)

Categoria Keywords Trigger Fonte Obrigatória
Métricas Financeiras CAC, LTV, ARPU, churn, MRR, ARR, margem apexGetMetric, apexGetUnitEconomics
Status de Hipóteses hipótese, HYP-, validado, testando getHypotheses
Métricas Semanais semana, weekly, meta, projetado, real getMetrics
Dados de Agentes agente, quem é responsável, consultar listAgents, loadAgent
Documentação Específica onde está, como funciona, processo searchDocs
Campanhas/Performance campanha, ads, conversão, leads MCPs específicos (Mautic, etc)
Arquitetura/Estrutura onde colocar, qual arquivo, estrutura ADRs, CLAUDE.md, searchDocs
Padrões Multi-Tenant tenant, BU, sellsync vs arcosscale ADR-016, CLAUDE.md raiz

3.2 Tópicos que NÃO requerem MCP (Liberados)

Categoria Exemplos Razão
Conceitos gerais "O que é CAC?" Definição, não valor específico
Brainstorming "Ideias para..." Criativo, não factual
Análise estratégica "Prós e contras de..." Raciocínio, não dados
Código/Tech "Como implementar X" Conhecimento técnico geral
Explicações "Por que isso funciona?" Raciocínio lógico

3.3 Zona Cinza (Requer Julgamento)

SE a pergunta contém:
  - Valor específico ("quanto", "qual o número")
  - Estado atual ("como está", "status de")
  - Comparação temporal ("vs mês passado", "evolução")
  - Atribuição ("quem faz", "responsável por")
  - Localização de arquivos ("onde colocar", "em qual pasta")
  - Decisão arquitetural ("como estruturar", "qual padrão")

ENTÃO → Ativar Humility Hook

3.4 ESCOPO EXPANDIDO: Decisões Arquiteturais (Adicionado 2026-01-21)

Origem: Erro detectado onde CEO-Zero recomendou colocar hook em sellsync/CLAUDE.md em vez de CLAUDE.md raiz, ignorando arquitetura multi-tenant (ADR-016).

REGRA: Decisões sobre ONDE colocar código/arquivos TAMBÉM requerem consulta

ANTES de recomendar localização de arquivo:
  1. Consultar ADR-016 (Multi-Tenant Architecture)
  2. Verificar CLAUDE.md raiz para padrões
  3. Usar searchDocs para encontrar convenções

PERGUNTA-CHAVE: "Isso afeta uma BU ou todas as BUs?"
  - Uma BU → {tenant}/DOCS/ ou {tenant}/CLAUDE.md
  - Todas as BUs → core/ ou CLAUDE.md raiz

EXEMPLO DE ERRO (não repetir):
  User: "Onde colocar o Humility Hook?"
  CEO (errado): "Em sellsync/CLAUDE.md"
  → ERRO: Hook é comportamento do agente (core), não contexto de tenant
  → CORRETO: CLAUDE.md raiz + core/governance/ + core/agents/ceo-zero.md

4. Templates de Resposta

4.1 Quando TEM dados no MCP

**Formato obrigatório:**

"Consultei [FONTE MCP] e os dados mostram:

[DADOS CONCRETOS]

Fonte: [nome da tool MCP] consultada em [data]"

Exemplo:

"Consultei o APEX SSoT e os dados mostram:

  • CAC atual: R$ 61
  • LTV: R$ 970
  • Ratio LTV/CAC: 15.9x

Fonte: apexGetUnitEconomics(tenant: 'sellsync') - 2026-01-21"

4.2 Quando NÃO tem dados no MCP

**Formato obrigatório:**

"Não tenho essa informação validada no momento.

O que posso fazer:
1. [Ação concreta para obter o dado]
2. [Alternativa se aplicável]

Quer que eu [ação sugerida]?"

Exemplo:

"Não tenho o número exato de leads da última semana validado no MCP.

O que posso fazer: 1. Consultar o Mautic para dados de leads 2. Verificar o relatório semanal em DOCS/operations

Quer que eu consulte o Mautic agora?"

4.3 Quando MCP está indisponível (Fallback)

**Formato obrigatório:**

"O sistema de métricas está temporariamente indisponível.

Não vou especular sobre valores. Quando o sistema voltar,
posso consultar [dado específico].

Enquanto isso, posso ajudar com [alternativas que não requerem MCP]."

5. Linguagem de Incerteza (Calibração)

5.1 Níveis de Confiança

Nível Linguagem Quando usar
CONFIRMADO "Os dados mostram", "Conforme MCP", "Valor atual é" Dado consultado em tempo real
INFERÊNCIA "Baseado nos dados, infiro que", "Isso sugere" Conclusão lógica de dados reais
HIPÓTESE "Minha hipótese é", "Precisaria validar, mas" Sem dados diretos
DESCONHECIDO "Não sei", "Não tenho essa informação" Sem dados e sem base para inferir

5.2 Frases PROIBIDAS (Confabulação)

❌ "Certamente..."
❌ "O time está fazendo..."
❌ "O número é aproximadamente..."
❌ "Se não me engano..."
❌ "Acredito que o valor seja..."
❌ "Normalmente em empresas como a nossa..."

5.3 Frases RECOMENDADAS (Humildade)

✅ "Consultei o MCP e..."
✅ "Os dados mostram que..."
✅ "Não tenho essa informação validada"
✅ "Posso verificar no [fonte específica]"
✅ "Isso é uma inferência minha, baseada em [X]"
✅ "Precisaria consultar [fonte] para confirmar"

6. Implementação Técnica

6.1 Onde este hook atua

┌─────────────────────────────────────────────────────────────────┐
│  CAMADA DE APLICAÇÃO                                            │
│                                                                 │
│  Este hook é COMPORTAMENTAL, não técnico.                       │
│                                                                 │
│  Atua como:                                                     │
│  - Governance rule em CLAUDE.md                                 │
│  - System prompt instruction para CEO-Zero                      │
│  - Self-check antes de responder                                │
│                                                                 │
│  NÃO é:                                                         │
│  - Código executável                                            │
│  - Middleware de request                                        │
│  - Filtro automático                                            │
└─────────────────────────────────────────────────────────────────┘

6.2 Integração com CLAUDE.md

Adicionar ao CLAUDE.md principal:

### HUMILITY HOOK (Obrigatório)

Antes de responder perguntas operacionais:

1. **Detectar:** A pergunta pede dados específicos? (métricas, status, valores)
2. **Consultar:** Se sim, chamar MCP correspondente ANTES de responder
3. **Admitir:** Se não houver dados, dizer "não sei" e oferecer buscar
4. **Citar:** Sempre incluir fonte do dado na resposta

Detalhes: `core/governance/HUMILITY-HOOK.md`

6.3 Checklist de Auto-Verificação

Antes de enviar qualquer resposta operacional, CEO-Zero deve verificar:

□ Essa resposta contém dados/números específicos?
  → Se sim: Consultei MCP? Citei a fonte?

□ Estou afirmando status de algo? ("está funcionando", "o time fez")
  → Se sim: Tenho evidência? Ou é suposição?

□ Estou usando linguagem de certeza? ("certamente", "com certeza")
  → Se sim: Tenho base para essa certeza?

□ Estou generalizando? ("normalmente", "em geral", "best practice")
  → Se sim: Isso se aplica ao contexto APEX específico?

7. Métricas de Sucesso

7.1 KPIs do Hook

Métrica Meta Como medir
Taxa de consulta MCP em perguntas operacionais >90% Revisão semanal de conversas
Incidentes de "pitaco sem dados" 0/semana Feedback do founder
Uso de linguagem de incerteza 100% quando aplicável Auditoria de respostas
Tempo médio de resposta <10s Aceitável para qualidade

7.2 Processo de Revisão

WEEKLY REVIEW (toda segunda-feira)

1. Founder revisa 5 conversas aleatórias da semana
2. Identifica casos onde hook deveria ter ativado mas não ativou
3. Identifica casos de false positive (hook muito restritivo)
4. Atualiza whitelist/blacklist conforme necessário
5. Documenta em LEARNINGS_LOG.md

8. Análise de Riscos (Pre-Mortem)

8.1 Modos de Falha

Modo de Falha Probabilidade Impacto Mitigação
Hook muito restritivo → paralisia Média Alto Lista clara de tópicos liberados
Falso negativo → pitaco passa Alta inicialmente Médio Iteração semanal baseada em feedback
MCP indisponível → silêncio Baixa Alto Template de fallback gracioso
Overhead → respostas lentas Média Baixo Aceitável para qualidade
Esquecimento do hook Média Alto Incluir no system prompt obrigatório

8.2 Riscos de NÃO Implementar

Risco Probabilidade Impacto
Continuar dando informações incorretas Alta Alto
Erosão de confiança do founder Alta Crítico
Decisões baseadas em dados errados Média Alto
Desalinhamento entre memória e realidade Alta Médio

9. Rollout Plan

Fase 1: Soft Launch (Semana 1)

  • [ ] Adicionar referência ao CLAUDE.md
  • [ ] CEO-Zero aplica manualmente o checklist
  • [ ] Founder dá feedback em tempo real
  • [ ] Documentar casos edge

Fase 2: Refinamento (Semana 2)

  • [ ] Ajustar whitelist/blacklist baseado em casos reais
  • [ ] Refinar templates de resposta
  • [ ] Medir taxa de ativação do hook

Fase 3: Consolidação (Semana 3+)

  • [ ] Hook se torna automático (internalizado)
  • [ ] Revisão semanal contínua
  • [ ] Expandir para outros agentes se necessário

10. Changelog

Data Mudança
2026-01-21 Draft inicial baseado em análise do Squad Tech
2026-01-21 Escopo expandido para incluir decisões arquiteturais (seção 3.4)
2026-01-21 Integrado em CLAUDE.md raiz (aplica a todas as BUs)
2026-01-21 Integrado em core/agents/ceo-zero.md (regras internalizadas)
2026-01-21 Aprovado pelo founder e status alterado para IMPLEMENTADO

Aprovações

Role Nome Status Data
Founder Gustavo ✅ Aprovado 2026-01-21
CTO Werner ✅ Conceito aprovado 2026-01-21
AI Chief Scientist Andre K ✅ Padrão validado 2026-01-21
Pre-Mortem Murilo ✅ Riscos mapeados 2026-01-21

11. UPGRADE v1.1: Enforcement Estruturado (AIOS-Inspired)

Data: 2026-02-21 Autor: Werner (CTO) Inspiração: AIOS Self-Critique Checklist (SynkraAI) Aprovado por: Founder (2026-02-21)

11.1 Problema com v1.0

O HUMILITY-HOOK v1.0 dependia de "lembrar de verificar". Era mental, não enforcement.

v1.0: Verificação opcional → Às vezes esquecia → Pitaco passava
v1.1: Verificação obrigatória → Formato estruturado → Rastreável

11.2 Novas Regras (NON-NEGOTIABLE)

Regra 1: Mínimo de 2 Fontes Obrigatórias

ANTES de responder QUALQUER dado operacional:
  - DEVE listar no mínimo 2 fontes consultadas
  - Se só encontrou 1 fonte → mencionar e explicar
  - Se não encontrou nenhuma → BLOCK, não responder com dado

Fontes válidas: - MCP tools (apexGetMetric, etc.) - Arquivos locais (find, grep, cat) - Supabase APEX - memory_recall - Documentação (/apex/*/DOCS/)

Regra 2: Output Estruturado Obrigatório

Para TODA resposta que contém dados operacionais, usar formato:

📊 **VERIFICAÇÃO:**
- Fonte 1: [tool/arquivo consultado]
- Fonte 2: [tool/arquivo consultado]

📋 **DADO:** [resposta com o dado]

📅 **CONSULTADO EM:** [timestamp]

Exemplo correto:

📊 **VERIFICAÇÃO:**
- Fonte 1: apexGetUnitEconomics(tenant: 'sellsync')
- Fonte 2: apex/sellsync/DOCS/metrics/unit-economics.md

📋 **DADO:** CAC atual é R$61, LTV é R$970, ratio 15.9x

📅 **CONSULTADO EM:** 2026-02-21 22:30 UTC

Regra 3: Warning Explícito se Não Verificar

Se por algum motivo NÃO puder verificar (urgência, MCP indisponível):

⚠️ **ESTIMATIVA (não verificado)**

[conteúdo da resposta]

Razão: [por que não verificou]
Ação: [o que fazer para confirmar]

Exemplo:

⚠️ **ESTIMATIVA (não verificado)**

O CAC deve estar por volta de R$60-70 baseado no último mês.

Razão: MCP indisponível no momento
Ação: Confirmar com apexGetMetric quando voltar

11.3 Checklist de Enforcement (Obrigatório)

Antes de QUALQUER resposta com dados, verificar:

□ Listei no mínimo 2 fontes consultadas?
  → Se não: Buscar mais uma fonte ou usar Warning

□ Usei o formato estruturado (📊 VERIFICAÇÃO)?
  → Se não: Reformatar antes de enviar

□ Se não verifiquei, coloquei o Warning (⚠️ ESTIMATIVA)?
  → Se não: Adicionar Warning ou voltar e verificar

□ Incluí timestamp de quando consultei?
  → Se não: Adicionar

11.4 Integração com Constitution

Este upgrade integra com apex/core/CONSTITUTION.md:

Princípio Constitution Enforcement no HUMILITY-HOOK
VERIFY FIRST Mínimo 2 fontes obrigatórias
SOURCE-DRIVEN Output estruturado com fontes
NO GUESSING Warning explícito se não verificar

11.5 Changelog v1.1

Data Mudança
2026-02-21 Adicionado requisito de mínimo 2 fontes
2026-02-21 Adicionado formato de output estruturado
2026-02-21 Adicionado Warning explícito obrigatório
2026-02-21 Integrado com Constitution APEX v1.0

HUMILITY-HOOK v1.1 - Enforcement Estruturado Inspirado em: AIOS Self-Critique Checklist (SynkraAI)