Buddy
PRD · Jornada pós-adoção · v1

Depois da adoção, a relação não pode morrer.

A Buddy é forte até a aprovação. Daí pra frente, o vínculo some. Este documento define como transformar o pós-adoção num acompanhamento vivo: um motor que reacende a conversa nos momentos certos, e uma carteirinha que registra a vida inteira do pet.

Foco: adoção consciente Núcleo: carteirinha do pet Motor de relacionamento E-mail-first, async, sem IA no MVP ≈ $0–20/mês
Público: sócio + engenharia Estado: reconciliado com produção (28/jun) Build: handoff v2
01 A aposta

Não se monetiza, nem se garante, uma relação que deixou de existir. A jornada pós-adoção cria essa relação e, de quebra, o dado que sustenta tudo que vem depois.

O quêAcompanhamento pós-adoção vivo: check-ins, carteirinha do pet, um motor que decide o que mandar e quando.
Por quêGarantir adoção consciente (a missão da ONG) e construir o ativo de longo prazo: o dado da vida do pet.
Como, baratoE-mail-first + conversa assíncrona + cron. Sem realtime, sem IA. ≈ $0–20/mês pra validar.
O ganhoTutor que volta, ONG que enxerga o pet prosperar, e o terreno pronto pra lead qualificado no futuro.
02 O problema

O produto para na aprovação. A vida do pet começa ali.

A Buddy resolve bem a entrada do funil. Mas a relação com o adotante morre quando ele é aprovado, justo no ponto em que se garante (ou não) que a adoção deu certo. Hoje o check-in pós-adoção existe, mas é manual e do lado da ONG: ela vê um lembrete e contata na mão. Nada automático, nada que chegue ao tutor.

Descobrir pet
Candidatura
Triagem automática
Aprovado
Pós-adoçãorelação · cuidado · vida do pet
Já forte hoje Zona morta: a oportunidade
03 Pra quem é

Três atores, um só registro vivo

👩
Tutor (adotante)

Quer cuidar bem, sem se sentir perdido

Nos primeiros meses bate insegurança ("ele puxa muito", "que vacina falta?"). Não volta sozinho ao app.

Recebe o empurrão no momento certo e mantém a carteirinha do pet quase sem esforço.
🏠
ONG / Protetor

Quer saber que a adoção deu certo

Hoje perde o pet de vista na entrega. Acompanhar é a missão dela, e prova de impacto pra doador e edital.

Enxerga o pet prosperando e é acionada só quando algo foge.
🐾
Buddy (sistema)

Quer manter o tutor ativo

Lê datas e estado da relação, decide a jogada e dispara. Nunca escreve conteúdo: orquestra.

Otimiza uma coisa só: % de adotantes ativos (tudo deriva disso).
04 A visão

Um ciclo que se alimenta sozinho

A jornada não começa na adoção: começa na busca, e continua depois da entrega. Cada interação escreve no registro do pet, e o registro mais rico dá motivo pra próxima interação. O cron e o e-mail são só o gatilho. O valor está no laço.

📧reacende
💬conversa
🔐vira dado
🧠recalcula
🗂️ Carteirinhao registro vivo
1

O motor reacende

Lê o estado da relação (fase de vida + datas) e dispara o toque certo por e-mail.

2

O tutor cai numa conversa

Parece chat, mas é assíncrona. Responde com texto, peso, "já vacinei", foto.

3

A resposta vira dado

Tudo escreve na carteirinha: saúde, vacina, timeline. O registro engorda.

4

O motor recalcula

Novas datas, engajamento atualizado. E o laço recomeça, mais rico.

05 Objetivos & métricas

Uma estrela-guia, e o que ela não é

O motor inteiro existe pra mover um número. Carteirinha rica, vacinação em dia, lead, impacto pra ONG: tudo deriva de manter o adotante ativo.

North star
0% adotantes ativos

Definição operacional (a calibrar): respondeu ao menos 1 toque nos últimos 45 dias. É o numerador que o produto persegue. O 60% é uma meta-hipótese pro piloto, não dado real.

0

Check-ins respondidos

Saúde da conversa: o tutor está voltando?

0

Eventos por carteirinha

Riqueza do registro = grude (proxy de retenção).

0

Vacinas com próxima data

Operacional: alimenta o motor e o cuidado.

0

Momentos de lead detectados

Estruturado pro futuro (detecta, não vende).

não-objetivos o que o MVP deliberadamente NÃO faz
Realtime. Conversa é assíncrona. Nada de websockets.
IA no MVP. Conteúdo curado por fase. LLM no endgame.
Gamificação. Tutor não vê score nem pontuação.
Vender oferta. O lead se estrutura agora, vende depois.
06 A arquitetura, em produto

Três pilares, um tripé

O dado dá motivo ao canal, o canal traz o adotante de volta, o motor decide a jogada. Tirar uma perna derruba o conjunto.

01
alcança

Canal

Dispatch agnóstico de canal. Day-1 é e-mail (Resend, já existe). WhatsApp e push entram depois sem reescrever.

🔭 a construir
02
guarda

Carteirinha

O cofre da vida do pet (o UserPet evoluído): perfil, saúde, vacina, origem, timeline. Onde tudo é escrito e lido.

✅ no código
03
decide

Motor

O estado da relação tutor↔pet: fase de vida, engajamento, risco. Quem recebe o quê, quando, e por quê.

🔭 a construir

O motor é a camada que faltava entre o dado e o canal.

07 Estado real

O que já temos, o que falta

Pull do código em 28/jun. Metade do que parecia "a construir" já está em produção. Isso muda onde o esforço vai: o produto não é vaporware, a fronteira é estreita e clara.

CamadaEstadoDetalhe
Carteirinha (dados)✅ construídoUserPet expandido, saúde+vacina (tabela tipada), origem, timeline. Endpoints ONG e tutor.
Pré-preenchimento na adoção✅ construídoA transação de adoção popula a carteirinha, congela a origem, cria a timeline.
Conversa ONG ↔ adotante✅ construídoMensageria in-app (shipada 28/jun). É a thread humana do processo.
Lembretes da ONG✅ construídoSaíram do mock. Calculam check-in devido, novo adotante, perfil incompleto.
Check-in do tutor (proativo)🟡 manualHoje a ONG contata na mão. Falta o automático, tutor-facing, que vira dado.
Canal: cron + e-mail + opt-in🔭 a construirNão há scheduler, dispatcher de jornada, nem consentimento de canal.
Motor: estado da relação🔭 a construirFase de vida, engajamento e risco ainda não existem no UserPet.
A fronteira de verdade é exatamente Canal + Motor (mais a tela da carteirinha). É aí que mora o trabalho. Detalhe técnico no handoff v2.
08 O motor de relacionamento

De cron burro a máquina de estados

Um cron dispara por relógio. O motor conhece o estado de cada relação e reage a eventos (respondeu, vacinou, sumiu). Continua barato e assíncrono: mais esperto, não mais caro.

eixo 1 · tempo 🌱 fase de vida do pet no lar
🐾
Onboarding
D0–7
Adaptação
D7–30
Rotina
D30–90
Estável
D90–365
Veterano
365+ 🎂
eixo 2 · engajamento (evento)
EngajadoMornoFrioInativo
flag · risco
2 check-ins sem respostavacina vencidaresposta negativa
tempochega em D+7/15/30… → avança a fase + agenda o toque
respondeureseta recência, sobe engajamento, captura sentimento
vacinoureagenda a próxima dose, o ciclo de lembrete recomeça
sumiu2 faltas → marca em risco → vira sinal pra ONG
09 Fluxos-chave

Um check-in de 7 dias, na prática

O e-mail é só o empurrão. O tutor cai numa thread que parece chat, mas é assíncrona. Tudo o que ele responde alimenta a carteirinha e mexe no estado do motor.

🧠 Motor
⚙️ Backend
📧 E-mail
👩 Mariana
🗂️ Carteirinha
quem fez 7 dias?
monta o toque
e-mail chega
abre a conversa
responde + foto
salva peso, vacina
engajamento sobe, recalcula datas
Sem realtime. A sensação de chat, sem o custo de um chat de verdade.
🚪 Opt-in (bem-vindo ao lar)
AdoçãoTela de boas-vindasConsentimentoMotor liberado
🚦 Escalonamento (em risco)
Não respondeuRe-nudgeMarca em riscoSinal pra ONG
10 Decisões de produto

O que decidimos, e por quê

01

A conversa da Buddy é uma thread própria

decidido
Produção tem uma thread (ONG ↔ adotante, na candidatura). Em vez de enfiar os check-ins nela, a Buddy ganha uma thread própria, ancorada no pet. Duas vozes, não uma confusa.
Por quê
  • Duas vozes: ONG conduz o processo, Buddy conduz a vida
  • Ciclos diferentes: candidatura acaba, a vida do pet dura anos
  • Cobre quem trouxe o pet de fora (sem candidatura)
Impacto
  • Um modelo de conversa novo, ancorado no pet
  • A tela de conversa da Buddy (já no escopo)
  • Mais build que reusar a thread existente
Benefício
  • Experiência fiel e clara ao usuário
  • Cobre 100% das carteirinhas
  • Privacidade ONG ↔ tutor separada
02

Opt-in numa tela mínima de boas-vindas

decidido
O consentimento de canal é capturado logo após a adoção, no pico de intenção ("Quer receber os cuidados do Bob por e-mail?"). Melhor conversão que esconder em configurações.
03

O motor é primário, a ONG vira escalonamento

decidido
A Buddy faz o check-in com o tutor automaticamente. O lembrete da ONG só dispara quando o tutor não responde ou fica em risco. Tira trabalho da ONG, mantém ela no loop.
04

Lead se estrutura agora, vende depois

decidido
O motor detecta o momento (porte+idade → ração, "puxa muito" → adestrador) e garante os dados. A oferta fica parqueada. Estruturar não é vender.
05

Scheduler é node-cron no backend

decidido
A API roda em AWS EC2 + PM2 (não Cloudflare, como um doc antigo assumiu). Um job diário no próprio Express, sem infra nova.
11 Dado como ativo

A conversa é uma porta de entrada de dados

Cada troca coleta dado do pet e do adotante, e alimenta o registro. Parte disso a Buddy já coleta hoje, no questionário de triagem, que pré-popula a carteirinha antes do 1º check-in.

💬

Conversa

check-ins · perguntas · fotos
🐾
⚖️
💉
🗂️

Carteirinha

o registro vivo
🔵 Operacional

Serve ao cuidado direto e ao motor: peso, próxima vacina, alergias, medos.

usado agora
🟢 Impacto

Agregado anônimo: prova de impacto da ONG pra patrocínio e edital.

leitura agregada
🟡 Lead

Sinaliza o momento de uma oferta útil (ração, vet, seguro).

detecta agora, vende depois
🔒 Privacidade fixada: marca ou patrocinador nunca vê dado individual, só o 🟢 agregado e anônimo. O lead acontece dentro do produto, nunca vendendo lista.
12 O lado da ONG

Enxergar a vida depois da adoção

Hoje a ONG perde o pet de vista na entrega. Com a jornada, ela ganha o que mais importa pra missão dela: a prova de que a adoção deu certo, no painel que ela já usa.

como a ONG vê 🖥️ Lembretes (já reais no código)
Tutor do Bob não respondeu 2 check-insSinal de risco · vale um contato
Alta
3 perfis incompletos para semearCarteirinha mais rica atrai e acompanha melhor
Média
Mel completou 90 dias, tudo bem 🎉Check-in positivo + foto nova
Ok
👁️

Visibilidade

Hoje a ONG tem zero pós-adoção. Acompanhar é a missão dela.

📊

Prova de impacto

Métrica pra doador e edital: adoções acompanhadas e bem-sucedidas.

🩹

Detecção precoce

Agir antes da devolução ou abandono reduz retornos.

💸

Doação · futuro

Tutor engajado tende a doar (Pix já existe) → sustentabilidade.

13 Escopo & fases

Testar barato, aprofundar depois

Fase 1 · agora

Validar a relação

Canal + motor + check-in que vira dado. Carteirinha já existe.

≈ $0–20/mês
Fase 2

Lado ONG completo

Adoções acompanhadas, leitura da carteirinha, impacto agregado.

Fase 3

Mais canal

WhatsApp + push, fotos/momentos ricos, alertas de bem-estar.

Fase 4 · endgame

Inteligência

IA reativa (LLM na janela), ofertas no contexto, loop de doação.

💡 O custo de validar é quase nada. O caro era a infra de chat realtime e a IA, e nenhuma das duas é necessária pro MVP. O custo real é a jornada in-app, que é o produto, não o canal.
14 Plano de build & riscos

Por onde a engenharia ataca

O detalhe com tarefas e critério de aceite está no handoff v2. Em alto nível, a fronteira são cinco blocos.

1 Canal fronteira
  • Opt-in + tela de boas-vindas
  • node-cron + ScheduledTouch
  • Dispatcher + templates Resend
2 Motor fronteira
  • Estado no UserPet
  • Transições tempo + evento
  • Detecção de lead (não vende)
3 Conversa Buddy fronteira
  • Thread própria (JourneyMessage)
  • Composer que vira dado
  • Conteúdo curado por fase
4 Carteirinha quase pronto
  • CRUD expandido do tutor
  • Tela do adotante
  • Mapear triagem → convívio
5 ONG parte feita
  • Reminder vira escalonamento
  • Adoções acompanhadas
  • Leitura da carteirinha

Cold-start da carteirinha

Mitigado: a ONG semeia e o pré-preenchimento já existe.

Abertura de e-mail

Tracking mede; porta aberta pra WhatsApp se for baixa.

Conversa só na candidatura

Thread própria no pet resolve a entrada lateral.

A pergunta que destrava tudo

Com qual ONG fazemos o primeiro piloto, e o que conta como sucesso: % de check-ins respondidos, carteirinhas ativas, fotos enviadas?

Ver o handoff de implementação v2 →
Buddy · PRD da jornada pós-adoção · v1 · material de alinhamento sócio + engenharia
Reconciliado com produção em 28/jun/2026. Fluxos e custos são estimativas para discussão.