Efetividade causal — especificação v0.1

Gate P2-001 / P2-002 · Plano: pesa-p2-plano-executavel.html · Fonte MD: efetividade-causal.md

APROVADO v0.1 por gestão acadêmica + NAP + TI em 24/07/2026. Gate P2-001/P2-002 fechado; P2-003–P2-006 entregues (baseline, API, painel, RBAC).
Honestidade analítica: método quasi-experimental (matching_heuristico_v0.1), não RCT. UI/API devem falar em “impacto estimado”, nunca em prova causal absoluta. Sem baseline ou com n insuficiente: não inventar métrica.

1. Objetivo (P2-001)

Evoluir a taxa bruta de “melhora” para medição por coorte: before/after no tratado, grupo de comparação e retenção/rematrícula incremental (US-04).

2. Outcomes oficiais v0.1

IDOutcomeSucessoJanelaFonte
O1 Melhora de risco Queda do score ≥ 5 pontos ou redução de 1 nível vs baseline 30 dias após t0 (secundário 15 dias) Score/nível + snapshot
O2 Rematrícula / permanência Label rematrícula = 0 conforme spec v0.1 Janela configurável da IES modelos-e-score + config período
O3 Conclusão operacional Fila/campanha em concluido com ≥ 1 ação Até encerramento (SLA) app_fila_caso / participantes

2.1 Uso

2.2 Classes O1

ClasseCritério
melhoraΔscore ≤ −5 ou nível caiu
sem_mudanca|Δscore| < 5 e nível igual
pioraΔscore ≥ +5 ou nível subiu

2.3 Censura (fora do denominador de impacto)

Conclusão/colação, trancamento formal, transferência externa, óbito, remoção do dataset sem baseline — contados em n_censurados.

3. Tempo zero (t0) e baseline

  1. 1ª mudança de fila para em_atendimento (preferencial fila).
  2. Inclusão como participante de campanha (preferencial playbook).
  3. 1º registro de intervenção com data (fallback).

Baseline: snapshot em t0 (score, nível, score rematrícula, curso, features mínimas). Sem snapshot → fora da coorte causal v0.1.

4. Coortes (P2-002)

4.1 Tratado (T)

Elegível com t0 no período, baseline presente, não censurado. Subtipos: T_fila, T_campanha, T_intervencao.

4.2 Comparação (C) — matching heurístico v0.1

5. Métricas

MétricaFórmula
Taxa tratadap_T = sucessos_T / n_T
Taxa comparaçãop_C = sucessos_C / n_C
Lift (retenção incremental)lift = p_T − p_C
Cobertura matchingn_T_pareados / n_T

Publicação: %/lift se n_T ≥ 10 e n_C ≥ 10; 5–9 só taxa sem IC; <5 só contagens. IC Wilson 95% quando aplicável.

6. Recomendação (P2-007 — entregue)

Heurística com n≥10: escalar (lift≥0,10 estável em 2 cortes), manter (|lift|<0,05), pausar (lift≤−0,05). API GET /api/metricas/efetividade-mensal; painel em efetividade.html.

CondiçãoSugestão
lift ≥ 0,10 estável em 2 cortesEscalar
|lift| < 0,05Manter / revisar SLA
lift ≤ −0,05Pausar / revisar protocolo

7. API (P2-004 — entregue)

GET /api/metricas/efetividade-coorte — exemplo:

{
  "status": "ok",
  "metodo": "matching_heuristico_v0.1",
  "outcome": "O1",
  "janela_dias": 30,
  "tratado": { "n": 42, "sucessos": 18, "taxa": 0.429 },
  "comparacao": { "n": 42, "sucessos": 11, "taxa": 0.262 },
  "lift": 0.167,
  "cobertura_matching": 0.95,
  "n_censurados": 3
}

Serviço: backend/services/efetividade_coorte.py. Painel: efetividade.html.

8. Persistência (P2-003 — entregue)

Tabela app_baseline_snapshot, imutável por (estudante_id, origem, origem_ref).

Serviço: backend/services/baseline_snapshot.py.

9. DoD do gate

10. Limitações v0.1

Plano P2 · Indicadores · Modelos e score · Índice